“霓虹灯”的模拟显示..doc
文本预览下载声明
1.摘要 2
2.设计任务及要求分析 3
2.1设计内容: 3
由@及*字符相间,从下到上由三角型变化成矩型。按Q退出程序。 3
2.2设计要求与分析: 3
3.方案比较及认证说明 4
3.1字符的显示方案 4
3.1.1方案说明 4
3.1.2方案比较及论证 4
3.2方案选择 5
4.系统原理阐述 5
4.1设计思路 5
4.2程序中的BIOS和DOS功能调用 5
4.2.1 BIOS功能调用 5
4.2.2 DOS功能调用 6
4.3程序模块 6
5.软件设计课题说明 7
5.1程序功能描述 7
5.2 流程图 7
6.调试记录及结果分析 9
6.1调试过程 9
6.2调试结果 10
6.3调试中出现的问题及解决方法 11
1.矩形不能全部填满三角形 11
7. 总结 11
8.参考资料 12
19.附录 源程序清单 12
课程设计任务书
学生姓名: 专业班级:
指导教师: 石云 工作单位: 自动化学院
题 目: “霓虹灯”的模拟显示
初始条件:
由@及*字符相间,从下到上由三角型变化成矩型。按Q退出程序。
要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)
设计任务及要求分析
方案比较及认证说明
系统原理阐述
硬件设计课题需要说明:硬件原理,电路图,采用器件的功能说明
软件设计课题需要说明:软件思想,流程图,源程序及程序注释
调试记录及结果分析
总结
参考资料
1.摘要
霓虹灯的千变万化是装点人们生活的不二之选,我们可以通过汇编语言对霓虹灯的闪烁进行控制,实现霓虹灯闪烁的任意控制。通过本学期对《微机原理与接口技术》的学期,我掌握了汇编语言的基本应用。汇编语言是一种功能很强的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言INT 10H 是 BIOS 对屏幕及显示器所提供的服务程序,而后倚天公司针对倚天中文提供了许多服务程序,这些服务程序也加挂在 INT 10H 内。’@’
INT 21H
方案二:运用BIOS功能的9号调用,程序设计如下
CALL CURSOR ;调用光标设置子程序
MOV AL,23H
MOV BL,0BH
PUSH CX ;CX进栈
MOV CX,1
MOV AH,09H
INT 10H
POP CX ;CX出栈
3.1.2方案比较及论证
方案一无法设置字符的属性,同时还会在下个坐标位置显示光标,影响光看者的视觉享受。但是显示方式很简洁很直观很容易记忆理解,若要配合背景为白色,选择该方案为好。方案二功能更加完备,更能实现霓虹灯的颜色变化显示效果,但是设计起来占用寄存器较多,略微复杂点,其设置的背景只能为黑色。
3.2方案选择
从上面的分析比较,显示字符方案一搭配起来的可行性和实际达到的效果更好,所以选择显示字符方案一来实现霓虹灯的功能。
4.系统原理阐述
4.1设计思路
(1)执行程序时,开始直接显示题目要求的三角形。
(2)执行程序这部分程序运用的主要原理是把屏幕看成坐标形式,从下而上,从两边到中间将三角形填充成矩形。
(3)霓虹灯显示完毕,按Q退出界面。
4.2程序中的BIOS和DOS功能调用
4.2.1 BIOS功能调用
(1)设置光标位置(2号功能)
入口参数:=2(功能号),BH=页号,DH=行号,DL=列号。
出口参数:无。根据
(2)初始窗口或向上滚动(6号功能)
入口参数:AH=6,AL=上滚行数,CX=上滚窗口左上角的行、列号。DX=上滚窗口右下角的行、列号。BH=空白行的属性。
出口参数:无。当滚动后,底部为空白输入行
(3)初始窗口或向下滚动(7号功能)
入口参数:AH=7,AL=下滚行数,CX=下滚窗口左上角的行、列号。DX=下滚窗口右下角的行、列号。BH=空白行的属性。
出口参数:无。当滚动后,顶部为空白输入行。
(4)在当前光标位置写字符和属性(9号功能)
入口参数:AH=9,BH=页号,AL=字符的ASCII码,BL=字符属性,CX=写入字符数。
4.2.2 DOS功能调用
(1)键盘输入一个字符并回显(1号功能)
输入参数无,返回结果AL=字符
(2)显示字符串,光标跟谁字符串移动(9号功能)
DS:DX=待显字符串的首地址字符串以‘$’结尾。
(3)显示一个字符,光标跟随字符移动(2号功能)
DL=待显字符的ASCII码,无返回结果。
4.3程序模块
(1)宏定义光标位置
MA MACRO OP1,OP2
PUSH AX
显示全部