汇编语言打字练习程序课程设计报告(共18页).doc
《汇编语言打字练习程序课程设计报告(共18页).doc》由会员分享,可在线阅读,更多相关《汇编语言打字练习程序课程设计报告(共18页).doc(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上课程设计说明书题目: 打字练习 院 系: 专业班级: 学 号: 学生姓名: 指导教师: 2010 年 12 月 31 日 专心-专注-专业安徽理工大学课程设计(论文)任务书计算机科学与工程学院 硬件 教研室学 号 学生姓名 专业(班级) 设计题目题目一:判断闰年题目二: 简单计算器题目三: 代码转换程序题目四:字符图形程序题目五: 学生成绩管理题目六: 打字练习 设计技术参数1 熟悉汇编指令、宏汇编语言的编程方法 2 BIOS中断调用、系统功能中断调用方法 3 磁盘文件、及文件内容操作设计要求写一个程序,运行可执行程序后,出现主界面,按回车键出现由26个字母组成的乱序
2、行,这时其中任一字母落下,在键盘上敲入该字母,如果输入正确,字母消失;按回车键进入打字练习;按ESC键返回主界面;按空格键暂停;按E退出。 工作量1. 完成所选题目的软件设计;2. 课程设计说明书1000字(不包括程序源代码)左右。工作计划第1次熟悉软件环境。第2次绘制程序流程图。第3次用编写程序。第4次用调试运行程序。第5次编写课程设计说明书参考资料1温冬蝉,沈美明.IBMPC汇编语言程序设计.第2版.北京:清华大学出版社,2002.32 王爽.汇编语言.北京:清华大学出版社,2003.93 李敬兆.8086/8088和基于ARM核汇编语言程序设计.第二版.合肥:中国科学技术大学出版社,20
3、08.9指导教师签字教研室主任签字 2010年 12月 17 日安徽理工大学课程设计(论文)成绩评定表指导教师评语:成绩: 指导教师: 年 月 日摘要 汇编语言是计算机能够给用户使用的最高效快捷的语言,也是唯一能对计算机所有硬件进行操纵的语言。鉴于汇编语言的用途广泛以及重要性,我花费的大量的时间完成此次课程时机,打字练习。打字练习是计算机常用的小应用程序,可以给想练习打字的人提供一个好的练习空间。本文的核心部分是对于详细设计的讲解与分析,而这当中的侧重点又在于设计思想的再现。关键词:功能模块,核心代码,随机字符,模块调用,功能分析目录 1设计目的这次课设的任务是写一个程序,运行可执行程序后,出
4、现主界面,按回车键出现由26个字母组成的乱序行,这时其中任一字母落下,在键盘上敲入该字母,如果输入正确,字母消失;按回车键进入打字练习;按ESC键返回主界面;按空格键暂停;按E退出。通过课程设计,主要达到以下目的:1.增进对汇编语言的认识,加强用汇编语言编程的能力;2.掌握汇编语言的中断调用功能的应用,可以用汇编语言调用各种中断调用功能,并由此实现对硬件的控制等;3.了解和掌握汇编语言程序设计过程、方法及实现,为以后微机原理课程的学习打下良好基础;4.通过课程设计可以使我们更加了解书上的知识,了解书上的语句并且能够应用自己的程序中;5.掌握屏幕输出显示的设计方法。2概要设计2.1 系统总体分析
5、根据题目要求可以看到有以下几部分来实现打字练习:1.由26字母乱序组成一行显示行。2.字母自动落下。3.从键盘输入的字母与落下字母相同则该字母消失,并且下一个字母自动接着落下。4.按下“Ese”键则程序返回到主界面。5.按空格键游戏暂停。6.在主界面按“E”则程序退出。打字练习的主要功能由以上六部分组成,每一部分之间的联系都是比较紧密的。对于以上及部分,最主要的部分就是第二三两个部分,这是打字练习的重点,需要详细设计其所需要的功能。2.2主模块框图及说明程序的核心模块是打字,各个模块功能的实现主要是通过键盘输入指令来融合的,主要流程是先到主界面,然后选择你想要进行的指令ENTER进入打字界面开
6、始打字,E退出程序,空格在打字练习时执行暂停的功能,ESC是从打字界面返回到主界面。核心模块的流程大体如下面的流程图图2-1:开始判断输入按键E 其他键 ENTER随即字母落下 ENTER从键盘输入字符 是键入字符是否与下落一致是否是ESC否是否是空格是当前字母消失是否 是暂停输入空格 是结束 图2-1程序设计流程图3 详细设计3.1 主模块及子模块说明 主界面是程序的初始入口,也是其他功能模块的接入点。主模块是打字模块,也是核心模块,主要通过各个键盘符来控制各个子模块之间的协调。子模块分为判断输入字符判断模块(这当中包含两个小的子模块:主界面输入字符判断和打字模块输入字符判断)、暂停模块、退
7、出模块(这当中包含两个小的子模块:打字界面返回主界面模块和主界面退出程序模块)3.2 各模块详细设计 3.2.1主界面模块当程序运行后,我们首先要进行选择,是要继续进行即进入打字练习程序还是终止练习退出程序。所以,在这里我们需要设置一个程序,该程序要判断键盘键入的字符,我们不妨规定ESC键和ENTER键分别为终止程序的控制键和进入打字练习程序的控制键,即当检验到键盘输入ESC后,退出程序;当键盘输入为ENTER时进入打字练习程序。单元程序如下:menu db *,0dh,0ah db Welcome to word type exercise,0dh,0ah db press Enter ke
8、y to continue.,0dh,0ah db when a letter is dropping,please hit it!,0dh,0ah db press space key to pause!,0dh,0ah db press ESC key to return main interface!,0dh,0ah db press letter E to exit!,0dh,0ah db *$以上设置主界面的显示方式。clear_screen 00d,00d,24d,79d Init_write 00d,00d,0ah,dl,80d,nextsign1 Init_write 24d,
9、00d,0ah,dl,80d,nextsign2 Init_write 00d,00d,0ah,dh,25d,nextsign3 Init_write 00d,79d,0ah,dh,25d,nextsign4 menu 05d,15d,ZK ;菜单信息的宏调用 menu 07h,15d,no menu 09d,15d,meg menu 11d,15d,meg1 menu 13d,15d,meg2 menu 15d,15d,meg3 menu 17d,15d,meg4 put: mov ah,02h ;设置光标位置 mov bh,00h mov dh,22d mov dl,33d int 10h
10、 mov ah,01h ;从键盘输入任意字符 int 21h cmp al,0dh je speed3 cmp al,45h je exit以上代码是清屏,并调用宏实现主界面的显示,并在主界面中设置了菜单显示后的光标位置,以方便使用者的操作。 in_cycle: add cx,01h cmp cx,1000 jne in_cycle push dx mov ah,06h ;从键盘输入字符 mov dl,0ffh int 21h pop dx jz pass cmp al,1bh ;如果键入ESC,则返回主菜单 je to_start1 cmp al, ;如果键入SPACE,则游戏暂停 je p
11、ause cmp al,di ;输入字母正确!则字母消失 je disappearto_start1: ;返回主菜单 jmp start上述程序段中用到了中断INT21,利用中断的有关规定,先将01H存入到AH当中,则AL中即为由键盘键入的字符。在此,先通过CMP指令来判断输入的字符是否是ENTER键(ENTER键的ASCII码为十六进制的0DH,程序开头部分的宏定义已经令CR为0DH),如果是的话,程序将跳转到程序disappear,disappear是定义的又一个程序,该程序即为打字练习程序的核心部分。如果不是ENTER的话,将执行下一条指令,即判断键盘键入的是否为E键,此功能由CMPAL
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编语言 打字 练习 程序 课程设计 报告 18
限制150内