毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 课程设计 >> 正文

打字计时练习-汇编语言课程设计+源程序+流程图

更新时间:2010-12-6:  来源:毕业论文

打字计时练习-汇编语言课程设计+源程序+流程图
1.设计目的及内容
汇编语言是一项实用性很强的技术,只有进行实际操作,将理论应用于实际中,才能确实掌握书中的知识点。通过运用MASM设计开发打字计时练习的程序,加深对汇编程序基本概念的了解,熟悉了运用MASM设计程序的方法,巩固学习成果。
通过本次课程设计加深了解了汇编语言的基本概念,语法,语义和数据类型的使用特点。熟练的掌握汇编语言的开发应用程序的一般步骤和方法及编程技巧,掌握调试程序的基本方法及上机操作方法,同时也提高实际动手能力及对计算机硬件的了解,掌握计算机软件与硬件之间的联系。更深入的了解计算机系统内部的有关知识,为以后的学习和系统开发奠定良好的基础。
2.开发环境
Windows XP/98/2000 操作系统,使用Microsoft 公司推出 MASM 汇编语言开发平台。MASM 包含TE.EXE编辑程序,MASM.EXE汇编程序和LINK.EXE连接程序。
   首先应用TE.EXE编辑源程序,生成.ASM文件。再用MASM.EXE对源程序进行汇编生成.OBJ文件。最后用LINK.EXE对.OBJ文件进行连接生成.EXE可执行文件。
3.功能分析
在IBM-PC系统中,驻留的ROM中有8KB的BIOS。它实现对系统中种种常用设备的输入输出操作的管理。其中的16H中原文请找腾讯752018766六;维-论'文.网
http://www.lwfree.cn 能。本程序是一个在键盘上练习打字并能统计时间的程序,在缓冲区中预放了一些字母,运行时,可按照屏幕上显示的字母输入练习,每输入完一行按回车键后,可显示出练习输入的时间。通过它练习英文打字练习,并能够统计时间。程序运行时,使用自编的中断向量处理程序。程序退出时,恢复中断向量。
3.1 设计思路
在键盘上练习的打字例句及其地址表、计时单元等预先放在DATA数据段中,自编的中断程序kbint检测按键时产生的中断,并把按键的扫描码转换为ASCII码存入缓存区buffer,这个工作和ROM09类型的键盘中断例行程序所完成的工作大致相同,只是在解释各个键时作了简化,即只解释了可显示字符,如英文字母、数字及一些符号;其他特殊键,如组合键、双态键、功能键等都未作解释,只作为字符码0来处理。在主程序部分保存原09类型的中断向量,设置自编例行程序的中断向量,设置中断屏蔽位,然后开中断。当键盘中断处理后,主程序中安排指令读取缓冲区中的字符并显示在屏幕上。在主程序的末尾,利用DOS功能恢复原09类型的中断向量,然后返回DOS。在显示键入的字符时,还应判断字符是否为回车(0DH)。如为回车符,说明一个句子输入完毕,此时调用显示时间的子程序显示出打字时间,然后顺序显示下一个例句。如果所存放的例句都已显示完,则又从第一个例句开始显示,直至键入某一功能键(如Esc键、Shift键等)退出程序,结束打字练习。打字时间统计利用自定时器中断处理程序clint来完成。每输完一例句,计时一次。在此中断例行程序中,定时器中断的次数记录在计数单元count中,当count计数值为18时,sec计数单元加1 ,当sec计数值达到60时,min计数单元加1 。因为输入完一个句子无论如何也不会达到小时级,所以对hours计数值的调整判断,实际上只起到退出定时器中断的作用。
显示时间的子程序disptime分别将各遍野单元的二进制数转换为十进制数,并以min:sec:msec的形式显示出来。其中msec是由count记数值转换成的:
count×1秒/18.2=count×55ms
3.2 程序流程图
4.源程序代码
STACK    SEGMENT PARA STACK 'STACK'
DB  256  DUP(0)
TOP      LABEL WORD
STACK    ENDS
DATA     SEGMENT  PARA PUBLIC 'DATA'
BUFFER   DB 16H DUP(0)                 ;缓冲区大小
BUFPT1   DW 0                          ;缓冲区1
BUFPT2   DW 0                          ;缓冲区2
KBFLAG   DB  0                       ;参数,80H表示允许,00表示不允许
PROMPT   DB '   *PLEASE PRACTISE TYPING*',0DH,0AH,'$'   ;定义提示语句
SCANTAB  DB 0,0,'1234567890-=',8,0   ;定义键盘
DB 'QWERTYUIOP[]',0DH,0                ;定义键盘第一行英文字母及符号
DB 'ASDFGHJKL;',0,0,0,0                ;键盘第二行英文字母及符号
DB 'ZXCVBNM,./',0,0,0                  ;键盘第三行英文字母及符号
DB ' ',0,0,0,0,0,0,0,0,0,0,0,0,0
DB '789-456+1230.'
******设置一些存储地址便于理解******
EVEN
OLDCS9   DW ?                       ;9号中断向量地址
OLDIP9   DW ?                       ;9号中断向量首地址
******预设置打字练习的句子******,1699

[1] [2] [3] 下一页

打字计时练习-汇编语言课程设计+源程序+流程图下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©lwfree.cn 六维论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。