CPU与汇编实验一实验报告.docVIP

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

本科实验报告 实验名称: DOS环境下的汇编语言编程环境使用 课程名称: CPU与汇编语言程序设计 实验时间: 2015.10.23 任课教师: 王耀威 实验地点: 10-102 实验教师: 苏京霞 实验类型: □ 原理验证 □ 综合设计 □ 自主创新 学生姓名: 学号/班级: 组 号: 学 院: 信息与电子学院 同组搭档: 专 业: 信息工程 成 绩: 实验一 DOS环境下的汇编语言编程环境使用 实验目的 掌握汇编程序设计的基本流程和学会上级开发简单程序; 熟练掌握宏汇编MASM的使用; 熟练掌握调试程序DEBUG的使用。 软硬件环境 硬件:windows系统计算机; 软件:装有MASM、DUBUG、LINK等应用程序。 实验原理 汇编语言程序设计过程如图所示: 汇编过程: 汇编语言程序设计的汇编过程就是将已编辑好的汇编程序文件(.asm)进行汇编,完成各种伪指令操作并将ASCII码以及所有的助记符翻译成为二进制代码供机器识别,最后建立3个扩展名分别为.OBJ的目标文件、.LST的列表文件以及.CRF的交叉索引文件。 汇编过程的主要功能为: (1)、检查源程序中的语法错误,并给出错误信息; (2)、产生目标文件; (3)、展开宏指令。 2、目标文件连接过程: 将目标文件(.OBJ)与库文件(.LIB)进行连接,产生可执行文件(.EXE); DEBUG的调试过程: 汇编程序的汇编过程只能检查出汇编语言程序的语法错误,但是无法检查出程序中的逻辑错误,要想对程序进行修正或者优化,就必须使用到DEBUG调试过程。 DEBUG调试过程有很多命令,最常用到的命令有: -u 反汇编命令; -t 单步执行命令; -d 地址,显示内存单元内容命令; -g 运行程序命令; -r 检查和修改寄存器内容命令; -q 退出DEBUG命令。等等 通常可以通过DEBUG调试过程来分析各个寄存器以及内存单元内数值的变化情况,来判断程序逻辑的正确性,以及最终结果的正确性。 返回DOS方法: (1)、标准方法: PUSH DS ;保护PSP段地址 MOV AX,0 ;保护偏移地址0 PUSH AX (2)、非标准方法: MOV AH,4CH INT 21H 实验内容与步骤 实验内容:编程实现将存放在缓冲区BUF1里面的16个字节类型的数据(0,1,2,3,4,5,6,7,8,9,0AH,0BH,0CH,0DH,0EH,0FH)复制到缓冲区BUF2; 实验步骤: 1、确定数据结构以及程序框图; 编辑源程序; 通过汇编程序检查语法错误; DEBUG调试程序直至结果正确。 实验结果及调试 程序框图如下: 汇编源程序: DATA SEGMENT BUF1 DB 0,1,2,3,4,5,6,7,8,9,0AH,0BH,0CH,0DH,0EH,0FH BUF2 DB 20 DUP(?) DATA ENDS STACK SEGMENT DB 100 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK MIAN PROC FAR MOV AX,0 MOV AX,DATA MOV DS,AX MOV ES,AX MOV CX,10H MOV SI,OFFSET BUF1 MOV DI,OFFSET BUF2 L: MOV AL,[SI] MOV [DI],AL INC SI INC DI DEC CX JNE L MOV AH,4CH INT 21H MIAN ENDP CODE ENDS END MIAN 实验结果: 调试过程: 反汇编: 调试前观察存储器以及寄存器值: 单步执行: 0复制完成并开始循环; 1复制完成,此时查看存储器的值: 与实验结果要求吻合,执行完毕并查看结果: 符合实验结果,调试完毕,q退出DEBUG。 实验心得 通过本次实验,初步掌握了汇编程序设计的基本思路和步骤,学会是用DEBUG调试对源程序进行逻辑检查,为以后的汇编程序设计奠定基础。

文档评论(0)

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

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

1亿VIP精品文档

相关文档