- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
汇编语言课程设计报告
(2012--2013年度第1学期)
课题名称:
打字计时练习程序
目录
TOC\o"1-3"\h\z\u
1设计目的1
2概要设计1
2.1系统总体分析1
2.2主模块框图2
3详细设计2
3.1主模块及子模块说明2
3.2各模块详细设计3
主界面模块3
中断处理模块3
3.2.3打字计时模块5
4程序调试8
4.1运行界面分析8
4.2调试过程及分析10
5心得体会10
5.1设计体会10
5.2系统改良11
参考文献12
附录13
附录1源程序清单13
附录1.1打字计时练习模块源程序13
打字计时练习程序
1设计目的
这次课程的任务是写一个在键盘上练习打字并能统计时间的程序,运行可执行程序后,按回车键出现主界面,进入英文打字练习并计时,通过课程设计,主要到达以下目的:
1.增进对汇编语言的认识,加强运用汇编语言编程的能力;
2.掌握汇编语言的中断调用功能的应用,可以用汇编语言调用各种调用功能,并由此实现对硬件的控制等;
3.了解和掌握汇编语言程序设计过程、方法及实现,为以后微机原理课程的学习打下坚实的根底;
4.通过课程设计可以使我们更加了解书上的知识,了解书上的语句并能用到自己的程序设计中;
5.掌握屏幕输出显示的设计方法。
2概要设计
2.1系统总体分析
在缓冲区中预放了一些字母,运行时,可按照屏幕上显示的字母输入练习,每输入完一行按回车键后,可显示出练习输入的时间。当一个句子输入完后〔回车键作为结束符〕,屏幕上以min:sec:msec的格式显示出键入字符的时间。在每次打字之前,屏幕上先显示一个例句,然后打字员按照例句,将句中字符通过键盘输入。这个过程共进行五次,当键入一个Enter键时,退出打字计时练习程序。
在键盘上联系的打字例句及其地址表、计时单位等预放在DATA数据段中。自编的中断程序Kbint检测按键时产生的中断,并把按键扫描码转换为ASCII码存入缓存区BUFFER〔内存中的一个区域〕,这个工作和EOM09类型的键盘中断例行程序所完成的工作大致相同,只是在解释各个键时做了简化,即只解释了可显示字符〔如英文小写字母、数字及一些字符〕,其他特殊键〔如组合键、双态键、功能键等〕都未做解释,只做字符码0来处理。在主程序局部保存原有09类型的中断向量,设置自编例行程序的中断向量,设置中断屏蔽位,然后开中断。当键盘中段处理后,主程序安排指令读取缓存区中的字符并显示在屏幕上。在主程序的末尾,利用DOS功能恢复原09类型的中断向量,然后返回DOS。在显示键入的字符时,还应判断字符是否为回车符〔0DH〕。如为回车符,说明一个句子输入完毕,此时调用显示时间的子程序显示打字时间,然后顺序显示一个例句。如果所存放的例句都已显示完毕,那么再次从第一个例句开始显示,直至键入某个功能〔如ESC键等〕退出程序,结束打字练习。打字时间统计利用自编的定时器中断处理程序Clint来完成。每输入一个例句,计时一次。在此中断例行程序中,定时器中断的次数记录在计数单位count中,当count的计数值为18时,sec计数单位加1,当sec计数值打到60时,min计数单位加1.因为输入完一个句子无论如何也不会到达小时级,所以hours计数值的调整判断,实际上只起到退出定时器的作用。
参加一个显示菜单程序,使得原来的程序更具有欣赏性;显示时间的子程序disptime分别将各计时单位的二进制数转换为十进制,并以min:sec:msec的形式出来。其中msec是由count中的计数值转换成的。
Count*1s/18.2=count*55ms
此式中,18.2是计算机系统中产生的一个时间中断,每秒18.2次。
2.2主模块框图
程序的核心模块是打字计时,通过显示的例句进行打字练习,最后显示出运行时间,主体流程图如下:
a.建立汇编原程序—通过———→b。编译为目标文件—↓——→d.连接为可执行文件
↑↓
∣c.不通过,重新修改〔语句错误〕↓
∣———————————————————↓
↑f.不正确,用调式工具调式,重新修改〔逻辑错误〕↓
﹂———————————————————————e.运行
↓
正确g.完成
3详细设计
3.1主模块及子模块说明
主模块:运行可执行程序显示打字主界面
缓冲区:BUFFER,BUFPT1,BUFPT2
调用中断8259,键盘中断,时钟中断,设置打字计时文件输入所显示的例句、显示所用时间、回到主界面程序顺序。
您可能关注的文档
- 2017全国卷非连续性文本阅读选讲.pptx
- 机电综合试题.doc
- 2017秋鲁教版高中地理必修3第三单元同步教学课件3.3.1--资源的跨区域调配--以南水北调为例-(共20张PPT).pptx
- 模板常用性能测试报告.doc
- 武汉市某设计院结构专业统一技术措施.doc
- (苏教版)数学一年级上册《比一比》.ppt
- 【辅导学校、教育机构】学管师CR入职培训.ppt
- 正定中学11届一轮复习学案-圆及直线与圆的位置关系部分答案.doc
- 【大计课程】实验02-Word文档设计.ppt
- (青岛版)一年级数学下册课件-认识钟表-5.ppt
- 幼儿教师资格证(考试资料)《幼儿保健知识与能力》新版初级练习卷有答案与.docx
- (附答案)川农12月《中药化学》作业考核-.docx
- (附答案)川农12月《园林植物保护学(本科)》作业考核-.docx
- (附答案)川农12月《有机化学(专科)》作业考核-.docx
- (附答案)川农12月《植物保护学(本科)》作业考核-.docx
- (附答案)东师《教育心理学》在线作业2-1(1).docx
- (附答案)川农12月《药剂学》作业考核-.docx
- (附答案)川农12月《配方饲料制造工艺与技术(专科)》作业考核-.docx
- 幼儿教师资格证(考试资料)《幼儿保健知识与能力》新版基础知识题库带解析.docx
- 幼儿教师资格证(考试资料)《幼儿保健知识与能力》基础知识模拟押题卷.docx
文档评论(0)