- 1、本文档共39页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(打字测试练习
《微机原理及接口》
课程设计
DOS是IBM PC系列微机的操作系统(现在的微机仍能运行DOS,而且新的操作系统也能继续提供几乎所有的DOS功能调用)负责管理系统的所有资源,协调微机的操作,其中包括大量可供用户调用的服务程序。DOS的功能调用不依赖于具体的硬件系统。所有的DOS系统功能调用都是利用软件中断指令INT 21H来实现的。也就是说,在程序中需要调用DOS功能的时候,只要使用一条INT 21H指令即可。INT 21H是一个具有90多个子功能的中断服务程序,这些子功能大致可以分为四类:设备管理、目录管理、文件管理和其他。其功能一览表可参见附录。为了方便用户使用这些子功能,INT 21H对每一个子功能都进行了编号—称为功能号。这样,用户就能通过指定功能号来调用INT 21H的不同子功能。
2.DOS功能调用方法
a.在AH寄存器中存入所要调用功能的功能号;
b.根据所调用功能的规定设置入口参数;
c.用INT 21H指令转入子程序入口;
d.相应的子程序运行完后,可以按规定取得出口参数。
3.DOS的基本输入/输出功能调用
A.键盘输入
调用格式:MOV AH,1
INT 21H
功能:等待从键盘输入一个字符并送入AL。
a.1号调用——从键盘输入单个字符
b.10号调用——从键盘输入字符串
功能:从键盘接收字符串送入内存的输入缓冲区,同时送显示器显示。
调用前要求:先定义一个缓冲区
调用格式:LEA DX,MAXLEN(缓冲区首偏移地址)
MOV AH,10
INT 21H
注意:调用时,要求DS:DX指向输入缓冲区
B.显示输出
a.2号调用——在显示器上显示输出单个字符
调用格式:MOV DL,待显示字符的ASCII码
MOV AH,2
INT 21H
b.9号调用——在显示器上显示输出字符串
调用格式:LEA DX,字符串首偏移地址
MOV AH,9
INT 21H
功能:将当前数据区中DS:DX所指向的以‘$’结尾的字符串送显示器显示。
2.4 子程序设计
1.子程序的结构
子程序一般以文件形式编写,并常以过程形式存放在代码段中。子程序文件通常由程序说明和子程序主体组成。子程序说明通常包括子程序功能描述(名称,性能,执行时间等),所有寄存器名和存储单元、子程序入口和出口参数及是否又调用其他子程序。子程序的结构一般包括保存现场、依入口参数从指定位置取加工信息、加工处理、依出口参数指定位置送出处理结果、恢复现场和返回调用程序等部分。
子程序的结构形式:
子程序名 PROC
RET
子程序名 ENDS
2.子程序的调用和返回
主程序调用子程序使用CALL指令。根据CALL指令获得目标地址的方法,有4种调用方式:段内直接调用方式、段内间接调用方式、段间直接调用方式和段间间接调用方式。为了能正确返回,不管哪一种调用方式,都需要把断点(即CALL指令的下一条指令的地址)入栈保护。同时,CALL指令的类型必须与RET指令类型相匹配。
3.主程序和子程序间的信息交换
子程序中允许改变的数据称为参数。参数包括入口参数和出口参数两种。主程序调用子程序之前必须向子程序提供一些参数,而子程序执行完毕后又要将执行结果提供给主程序使用。参数传递的方式一般有三种,即用寄存器传递参数、用参数表传递参数和用堆栈传递参数。不论采用哪种方式,调用程序和子程序都必须互相呼应。子程序需要在哪里取参数,主程序就应将参数送到哪里,并且要注意参数的先后顺序。
a. 用寄存器传递参数
寄存器传递参数适用于参数个数较少时。方法是,主程序将子程序执行时所需要的参数放在指定的寄存器中,子程序的执行结果也放在规定的寄存器中。
b. 用参数表传递参数
参数表方式适用于参数较多的情况。方法是,在存储器中专门规定某些单元存放入口参数和出口参数,即在内存中建立一个参数表。
c. 用堆栈传递参数
用堆栈传送适用于参数多并且子程序多有嵌套或递归调用的情况。方法是,主程序将参数压入堆栈,子程序将参数从堆栈中弹出。
第三章 设计方案
3.1 设计思想分析
在键盘上练习的打字例句及其地址表,计时单元等预先放在DATA数据段中,键盘处理子程序kbget读入按键时产生的键值,并把按键的扫描码转换为ASCII码存入缓存区buffer。在显示键入的字符时,还应判断字符是否为回车符(0DH)、退格键(08H)和ESC键。如为回车符,说明一个句子输入完毕,此时调用显示时间的子程序显示出打字时间,统计和显示正确数和错误数。然后顺序显示下一个例句。如果所存放的例句都已显示完,则又从第一个例句开始显示,直至键入功能
您可能关注的文档
- (我跟爸爸学设计.docx
- [2013年江苏小高考物理试题.doc
- (战火纷飞:阿富汗游戏图文攻略.doc
- [2013年江西省中考化学试卷.doc
- (房地产经济学复习题答案08.12.28.doc
- (房地产经纪实务模拟试题2.doc
- (哈尔滨学院小学教育专业建设与发展规划.doc
- (哈夫曼编码贪心算法.doc
- (房地产经济学天津大学作业答案.doc
- (房地产经济可持续发展控制分析.doc
- 江苏旋力集团股份有限公司校园招聘模拟试题附带答案详解推荐.docx
- 武汉邮电科学研究院有限公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版1套.docx
- 江苏文峰集团有限公司校园招聘模拟试题附带答案详解汇编.docx
- 武汉邮电科学研究院校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版学生专用.docx
- 江苏洋河集团有限公司校园招聘模拟试题附带答案详解及参考答案.docx
- 江苏裕纶纺织集团有限公司校园招聘模拟试题附带答案详解及参考答案.docx
- 江苏天工工具有限公司校园招聘模拟试题附带答案详解学生专用.docx
- 武汉人和集团有限公司校园招聘模拟试题附带答案详解及答案1套.docx
- 武汉邮电科学研究院校园招聘模拟试题附带答案详解1套.docx
- 2025-2030中国股权投资行业发展分析及投资前景与战略规划研究报告.docx
最近下载
- JBL PartyBox 1000用户中文手册.pdf
- 2023年牛津译林版七年级英语下册《Unit 4》单元测试(附答案).doc VIP
- 《计算机网络技术基础 》(王崇刚)教案 (理论部分) 网络体系结(一)网络体系结构概述.pdf VIP
- AP物理2 单元练习题1 Fluids and Thermal Physics.pdf VIP
- 《计算机网络技术基础 》(王崇刚)教案 (实训部分) 上机实训(七) .docx VIP
- EPC工程设计管理主要内容.docx
- 装修公司融资商业计划书(精选5).pptx
- 生化期末考试吉林大学2015.pdf VIP
- 计算机网络技术基础与实训.pptx VIP
- 2023年牛津译林版七年级英语下册Unit8 测试题(附答案).doc VIP
文档评论(0)