- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
dos功能调用实验报告
实验三DOS系统功能调用 一、实验目的 1.熟练掌握子程序的结构。 2.掌握子程序设计的思想、方法及上机调试过程。 3.熟练掌握系统功能调用的作用。 4.掌握系统功能调用的思想、方法。 二、实验准备知识 1.8086/8088汇编语言指令及伪指令的用法 2.子程序设计的思想和方法 子程序是功能相对独立的程序段,它可以实现源程序的模块化,简化源程序结构,提高编程效率 子程序定义:利用过程伪指令PROC和ENDP,格式如下:过程名 PROC[NEAR|FAR];过程体?? ENDP过程名 其中:可选的参数指定过程的调用属性。没有指定过程属性,则采用默认属性NEAR。 NEAR属性:段内近调用,子程序只能被相同代码段的其他程序调用FAR属性:段间远调用,子程序可以被相同或不同代码段的程序调用 主程序调用子程序:利用CALL指令 子程序返回主程序:利用RET指令 保护现场:子程序开始处应该保护子程序中使用的寄存器,子程序返回前相应进行恢复。 子程序中对堆栈的压入和弹出操作通常成对使用,以保持堆栈的平衡。 子程序允许嵌套和递归 处理好子程序与主程序之间的参数传递问题:利用寄存器、内存缓冲区及堆栈。 3.DOS和BIOS中断调用是机器及操作系统提供的中断调用功能 4.系统功能调用的步骤: ⑴在AH寄存器中设置系统功能调用号 ⑵在指定寄存器中设置入口参数⑶用中断调用指令执行功能调用⑷根据出口参数分析功能调用执行情况 5.DOS利用21H号中断提供给用户近百个系统功能,主要包括设备管理、目录管理和文件管理三个方面的功能 输入一个字符,01H号功能调用 输出一个字符,02H号功能调用 输入一个字符串,0AH号功能调用 输出一个字符串,09H号功能调用 注意它们的入口参数及出口参数 6.BIOS也以中断服务程序的形式,向程序员提供系统的基本输入输出程序 BIOS功能更加基本,且与操作系统无关,当DOS没有启动或不允许使用DOS功能调用时,可以使用BIOS功能调用 键盘I/O中断调用——INT16H 显示器输入中断调用——INT10H 注意它们的入口参数及出口参数 三、实验性质 本实验为综合性实验。 四、实验学时 本实验学时为2学时。 五、实验内容 1.编写主程序调用一个过程,实现将两个非压缩BCD码转换为一个压缩BCD码,并用字符显示功能和字符串显示功能完成在屏幕上显示一个字符串“HelloWorld!”的功能。 2.在内存建立一个表TABLE,其中存放20个字节型无符号数,从键盘输入一个数X,查找该数X在TABLE中是否存在,若存在,则在RESULT单元存入1,否则存入-1。 六、实验要求 1.实验前要做好充分准备,包括程序框图,源程序清单,调试步骤,调试方法,以及对程序结果的分析等。 2.独立完成,严禁抄袭。 3.学会解决调试过程中的错误。 七、实验报告内容 1.画出程序框图,写出源程序清单及在DEBUG状态下运行程序的过程。 2.写出调试过程中遇到的问题是如何解决的,并对调试过程中的问题进行分析。 3.写出调试的指令及运行结果,并对执行结果进行分析。 4.收获及体会。 DSEGSEGMENT TABLEDB1,12,13,14,15,2,23,24,25,26,6,34,35,36,37,4,45,46,5,56 XDB? RESULTDB? DSEGENDS ESEGSEGMENT ESEGENDS CSEGSEGMENT ASSUMECS:CSEG,DS:DSEG,ES:ESEGSTART: MOVAX,DSEG MOVDS,AX MOVAH,01H INT21H ANDAL,0FH MOVX,AL CALLQUERY MOVAH,4CH INT21H QUERYPROC MOVCX,20 MOVDI,OFFSETTABLE MOVBX,SEGTABLE MOVES,BX MOVAL,X CLD REPNESCASB JZA1 MOVRESULT,-1 JMPA2 A1:MOVRESULT,1 A2:RET QUERYENDP CSEGENDS ENDSTART SECOND FIRST 实学院名称:实验名称:班 级:学生姓名:学生学号: 验报告 DOS系统功能调用及BIOS调用 DOS系统功能调用及BIOS调用实验 【实验目的】 (1
文档评论(0)