微机原理课设

微机原理课设

ID:41268065

大小:1.47 MB

页数:66页

时间:2019-08-20

微机原理课设_第1页
微机原理课设_第2页
微机原理课设_第3页
微机原理课设_第4页
微机原理课设_第5页
资源描述:

《微机原理课设》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、目录摘要I1设计任务及其分析11.1设计任务11.2设计任务分析12.方案论证与比较12.1程序编写方式12.2字母随机产生的方式23.系统原理阐述24.软件设计说明34.1主程序流程图34.4游戏界面64.4.1游戏前的提示界面64.4.2游戏界面的初始化74.5字母下落控制84.5.1字母随机选取84.5.2字母下落延时94.5.3游戏输入响应104.5.4字母下落程序段114.6随机字母补充HIT134.7游戏暂停函数PAUSEE144.8字母消失程序段144.8.1字母消失总流程图144.8.2字母高亮颜色选择Color_Select函数154.8.

2、3发声程序Sound2函数164.8.4字母消失函数Disappear函数174.9游戏结束结果显示函数DISP184.10难度选择函数195.程序调试与运行记录205.1主界面画面205.2主界面输入的错误提示215.3游戏运行的画面225.4难度选择界面23参考资料25附录26摘要II指法练习程序完成了键盘指法练习功能,通过汇编语言的编程实现字母的随机产生、落下、消失、以及发声功能,并且完成了通过键盘来控制游戏的开始、暂停、结束等功能,完成了人机交互界面的编程。除此以外,整个程序采用模块化设计,增强了可读性。通过这一次课程设计,更加深刻理解了汇编的基础知

3、识和编写调试程序的基本方法。关键词:指法练习,汇编,模块化II1设计任务及其分析1.1设计任务1.从屏幕上方以一定的时间间隔随机落下可显示字符,字符的出现位置亦是随机的;2.在多个字符下落的过程中可输入任意键,若键入与其中的任意一个字符相匹配的键,则该字符高亮显示并发出蜂鸣声,同时计分;3.按ESC键结束练习并显示命中率;4.按Q键退出。1.2设计任务分析根据任务的要求可以分析得出在程序应有的各个功能模块:1、字母的随机出现与显示;2、字母自动下落显示;3、键盘输入正确时字母消失;4、字母消失时的字符高亮;5、字母消失时的蜂鸣发声;6、命中率计算程序与计分程

4、序。同时在还应满足:1、游戏时按Q键退出;2、在任何情况下按ESC键后退,当显示界面为主界面时,退出程序。本程序在要求的基础拟添加以下功能:1、游戏难度选择;2、错误输入提示;3、字符高亮的颜色变化;4、得分的实时显示。2.方案论证与比较2.1程序编写方式方式1:仅利用简单的系统符号指令完成程序优点:指令简单,易于理解63缺点:过多的转跳会导致程序可读性降低方式2:利用宏定义和函数定义的模块化程序设计优点:程序实现模块化,可读性高缺点:指令难度偏大根据要求的以及预想的功能实现,程序需要实现的功能模块达到10个之多,用方式1编程必然使程序杂乱不易读,所以决定选

5、择方式2来进行编程。2.2字母随机产生的方式方式1:读取系统时间的秒位作为选择基数优点:结果近似随机缺点:秒位时间过长,有可能导致随机失败方式2:读取系统时间的1/100秒位作为选择基数优点:相对打字游戏来说,变化速度上满足要求缺点:不是完全随机因为在8086系统中,没有产生随机数的函数可供调用,所以只能利用BIOS中断或者DOS中断来产生随机数作为选择基数。而系统时间秒位相对指法练习程序来说速度过慢,因此选择方式2。3.系统原理阐述从设计任务与要求可以得知编写此程序的基本原理,编写一个主程序和若干个子程序来完成任务所要求的功能,与此同时,程序尽量模块化,功

6、能化,让程序看起来更加简洁明了。整个程序的流程是:首先调用初始化子程序,对系统参数和界面进行初始化,然后调用输入功能选择程序,以此对功能进行选择,根据用户的选择来调用不同的子程序;同时应该能产生随机数使字母能够随机产生;最后在游戏结束时调用分数显示子程序。具体的子程序在程序功能说明中详细讲到,此处不再赘述。634.软件设计说明4.1主程序流程图图1.主程序原理图主程序的流程图如图1所示。程序运行时,首先利用Menu,Init_game和Clean三个实现宏定义过的函数进行初始化。其中Init_game的功能是循环输出,用于初始化界面,Menu的功能是在界面上

7、输出字符串,用于界面信息的显示,Clean的功能是清理屏幕。初始化完毕后,进入人机交互的阶段,此时用户需要输入各功能对应的数字进行供选择。若输入为‘1’,则直接开始游戏;若输入为‘2’,则进入速度选择,若输入为‘3’或者‘Esc’,则退出程序;若输入为其它则转跳otherkey显示错误输入信息,提示用户输入了错误信息并重新选择。634.2宏定义函数图2宏定义函数流程图宏定义函数的流程图如图2所示。由图可见,Init_game函数首先设置光标到指定位置,然后输出字符,重复次数也是用函数带入的参数决定。Clean函数主要调用了BIOS中断的屏幕初始化功能(AH=

8、6,INT10H),并且CL,CH,DH,DL四个参

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

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

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