104-15-李呈微原软件报告.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
104-15-李呈微原软件报告

信息与通信工程学院 微机原理软件实验报告 班 级: 2010211104 姓 名: 李呈 学 号: 序 号: 15 日 期: 2012年月 目录 1.1 实验目的 3 1.2 实验内容 3 1.3 预习思考 4 1.4 实验过程 5 2 实验二、分支,循环程序设计 10 2.1 实验目的 10 2.2 实验内容 10 2.3 预习思考 11 2.4 实验过程 11 2.4.1 流程图 11 2.4.2 源代码 12 2.5 实验结果及分析 13 3 实验三、代码转换程序设计 13 3.1 实验目的 13 3.2 实验内容 14 3.3 预习思考 14 3.4 实验过程 14 3.4.1 模块图 14 3.4.2 流程图 14 3.4.3 源代码 15 3.5 实验结果及分析 17 4 实验四、子程序设计 17 4.1 实验目的 17 4.2 实验内容 17 4.3 预习思考 18 4.4 实验过程 19 4.4.1 模块图和流程图 19 4.4.2 源程序 20 4.5 实验结果及分析 23 5 实验五、中断程序设计 23 5.1 实验目的 23 5.2 实验内容 24 5.3 预习思考 24 5.4 实验过程 25 5.4.1 模块图和流程图 25 5.4.2 源代码 25 5.5 实验结果及分析 29 6 实验总结 30 1 实验一、DEBUG 的使用 实验目的 掌握汇编程序的编辑、编译、连接和执行的全过程; 学习和掌握用DEBUG调试程序的方法。 实验内容 用编辑软件,输入以下汇编语言源程序: DAT SEGMENT A DB 20 B DB 15 Y DB 3 DUP(0) Z DB 0,0 DAT ENDS STA SEGMENT STACK DW 50 DUP(?) STA ENDS COD SEGMENT ASSUME CS:COD,DS:DAT STAR PROC FAR PUSH DS XOR AX,AX PUSH AX MOV AX,DAT MOV DS,AX MOV AX,STA MOV SS,AX MOV AL,A MOV Z,AL MOV Z+1,AL CALL SUB1 MOV AL,B MOV Z,AL MOV Z+1,AL CALL SUB1 MOV AL,A MOV Z,AL MOV AL,B MOV Z+1,AL CALL SUB1 ADD WORD PTR Y,AX ADC BYTE PTR[Y+2],0 RET STAR ENDP SUB1 PROC MOV AL,Z MOV AH,Z+1 MUL AH ADD WORD PTR Y,AX ADC BYTE PTR[Y+2],0 RET SUB1 ENDP COD ENDS END STAR 通过编译,连接形成可执行文件。 用 DEBUG 将可执行文件调入,并进行调试。 用 D 命令观察数据区在内存中的具体内容,记录单元 A 和 B 的具体地址。 用 U 命令对目标代码反汇编,观察反汇编后的结果。注意发现源程序的起始位置,并记录这个起始地址。 用 T 命令作单步跟踪调试。比较每条指令执行后的结果和原来的理解是否一致,得出程序运行的结果:它们是写在什么单元,具体内容是什么;并判断结果是否正确。在子程序 SUB1 的入口处设一断点,用 G 命令执行程序。在断点处观察堆栈的内容,比较堆栈的内容和程序返回地址是否一致。 用 E 命令修改单元 A,B 的内容,重新执行程序,并记录结果。 用 M 命令和 A 命令对程序进行修改:将主程序中最后两条指令 (ADD 和ADC) 修改为一条 CALL SUB1 指令,重新执行程序。

您可能关注的文档

文档评论(0)

xy88118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档