微机原理霓虹灯显示程序课程设计.doc

微机原理霓虹灯显示程序课程设计.doc

ID:55772626

大小:371.50 KB

页数:35页

时间:2020-06-07

微机原理霓虹灯显示程序课程设计.doc_第1页
微机原理霓虹灯显示程序课程设计.doc_第2页
微机原理霓虹灯显示程序课程设计.doc_第3页
微机原理霓虹灯显示程序课程设计.doc_第4页
微机原理霓虹灯显示程序课程设计.doc_第5页
资源描述:

《微机原理霓虹灯显示程序课程设计.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、霓虹灯显示程序设计1设计内容及要求要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1.用汇编语言编写一个霓虹灯的模拟显示程序;2.在屏幕上显示你的中文名字或其它文字,按某种规律闪烁变化,按“q”键退出;3.撰写课程设计说明书。内容包括:摘要、目录、正文、参考文献、附录(程序清单)。正文部分包括:设计任务及要求、方案比较及论证、软件设计说明(软件思想,流程,源程序设计及说明等)、程序调试说明和结果分析、课程设计收获及心得体会。2程序原理分析本次设计实现的是霓虹灯的模拟显示,在80*25大小的屏幕上

2、显示由各种字符组成的不同图形,在屏幕上,0行0列相对于屏幕左上角的位置,24行79列相对于右下角的位置。对应显示屏幕上的每个字符,在存储器中又连续的两个字节表示,一个字节保存ASCII码,另一个字节保存字符的属性。在屏幕上处理字母、数字以及一些字符图形称为文本方式。在文本方式下,属性字节对单色显示和彩色显示都是有效的。本程序采用的是彩色字符显示,在显示彩色文本时,属性字节能够选择前景和背景的颜色。每个字符可以选择16种颜色中的一种,背景色有8种颜色可以选择。图1-1是16色文本方式显示的属性字节。表1-1列出了16色字符方式颜

3、色的组合。76543210BLRGBIRGB闪烁前景背景图1-116色方式下的属性字节表1-116种颜色的组合颜色IRGB颜色IRGB颜色IRGB颜色IRGB黑0000灰1000红0100浅红1100蓝0001浅蓝1001品红0101浅品红1101绿0010浅绿1010棕0110黄1110青0011浅青1011灰白0111白1111本程序主要运用了BIOS显示中断类型10H的部分功能,主要有用到以下几个功能:置光标:AH=02BH=页号DH=行DL=列读光标:AH=03显示字符串:AH=13HAL=01H;光标跟随移动ES:B

4、P=串地址CX=串长度DH,DL=起始行列BH=页号BL=属性即程序通过INT10H2号功能的调用置光标位置,3号功能的调用读光标的位置,以及13号功能的调用显示字符串。并通过顺序、循环结构程序的调用进行图形的霓虹灯效果显示。程序的数据段以字符串的形式来表示,可以很方便的直接运用INT10H中的13号功能即显示字符串功能显示图形,这样一来程序得到了很大的简化,但同时,图形的显示是以字符串的形式,即以行的依次顺序逐渐出像在屏幕上,在字符串一次出现的同时,通过调用相应的子程序改变图形显示的颜色属性,以及不断变换显示图形的形状。同时

5、由于微机处理速度较快,不容易一次看到图形变化,则需要在程序中添加延迟程序作为子程序不断被调用用以减缓显示速度,方便肉眼观察到图形变换效果。延迟程序中,由于寄存器CX存储有限,不能达到合适的延迟程度,故应采用循环结构的子程序来进行延迟操。3程序流程图3.1主程序流程图定义数据段,然后将代码段程序初始化,然后调用13号功能显示字符串组成的‘董德军’三个字,再调用条纹显示子程序,显示运动的条纹,判断是否输入Q,若输入Q,则程序结束,退出程序,否则,执行跳转命令,继续调用汉字显示程序和条纹显示程序。主程序结构流程图如图2-1开始Y数据

6、段初始化调用汉字显示程序以不同颜色重复显示名字“董德军”N调用条纹显示子程序,显示运动的条纹是否输入Q/q?Y结束图3-1主程序结构流程图3.2子程序结构流程图3.2.1名字显示子程序流程图按照要求要显示出自己的名字,因此,运用多个字符组成,并按照笔画顺序显示出来,结构流程图如图3-2所示。开始YN判断CX中内容是否为0?CX出栈,保存循环次数CX入栈保存组成点的基本信息寄存器入栈CX寄存器清零在指定坐标处写第一个点CX中内容自减1寄存器出栈结束图3-2名字显示子程序流程图3.2.2擦除子程序流程图在显示完名字并进行变色以后,

7、将使用竖条纹对屏幕进行擦出,擦除以后若没有检测到字符Q的输入,则进行循环,继续显示名字,并在此进行擦出,擦出子程序流程图如图3-3所示。开始NNNYY结束保存点的基本信息列坐标dl自减1将字符改为*将字符写11个判断指定位置处字符是否为@?判断是否到达屏幕最左端?保存组成点的基本信息判断指定位置处字符是否为*?图3-3擦除子程序流程图4程序主要模块功能分析4.1名字显示功能模块如何使用ASCII码显示自己的中文名字是这次课程设计的关键之处,为了达到霓虹灯的效果,我采用各种字符组合,来组成名字的形状,为了达到更美观的效果,在这里

8、,借助一个字符画转换软件,名字为ASCIIArtStudioASCII,该软件是用来创建ASCII字符画的软件,可以像使用画笔一样创建ASCII字符画。还支持将图片转换为字符画,以及保存成文本或图片文件等功能。首先我使用画图工具将自己的名字打出来,并转化为图片格式,如图4-1

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。