东北大学汇编实验.doc
《东北大学汇编实验.doc》由会员分享,可在线阅读,更多相关《东北大学汇编实验.doc(10页珍藏版)》请在课桌文档上搜索。
1、-课程B080103020汇编语言程序设计实验报告*班级指导教师实验名称数据传送、分支与循环构造程序设计实验开设学期2021-2021 第一学期开设时间第1周第10周报告日期2021年11月6日评定成绩评定人评定日期东北大学软件学院实验1 数据传送指令1、 实验目的:了解和掌握 MOV、PUSH、POP、*CHG四条指令的作用和在编程中的用法。、实验要求:采用立即数寻址方式将19E0H,3F56H,0AF37H,9A81H分别送给EA*、EB*、EC*、ED*四个存放器。记录:操作前 EA*=75C59191、 EB*=7FFDE000 、 EC*=00000000、 ED*=00401000
2、操作后 EA*=000019E0、 EB*=00003F56、 EC*=0000AF37、 ED*=00009A81操作过程中所用到的指令:INCLUDE Irvine32.inc.codemain PROCcall DumpRegsmov ea*,19E0Hmov eb*,3F56Hmov ec*,0AF37Hmov ed*,9A81Hcall DumpRegse*itmain endpEND main采用采用存放器寻址方式将19E0H送给EB*、EC*、ED*三个存放器。记录:操作前 EA*=75C59191、 EB*=7FFDE000 、 EC*=00000000、 ED*=004010
3、00操作后 EA*=000019E0、 EB*=000019E0、 EC*=000019E0、 ED*=000019E0操作过程中所用到的指令:INCLUDE Irvine32.inc.codemain PROCcall DumpRegsmov ea*,19E0Hmov eb*,ea*mov ec*,eb*mov ed*,ec*call DumpRegse*itmain endpEND main对EA*、EB*、EC*、ED*四个存放器进展出入堆栈的操作。将EA*、EB*、EC*、ED*四个存放器的容依次压入堆栈中,注意观察栈指针存放器和堆栈容的变化。记录:压入EA*前 ESP=0018FF9
4、0,ESP=75C5919F压入EA*后 ESP=0018FF8C,ESP=00000000压入EB*前 ESP=0018FF8C,ESP=00000000压入EB*后 ESP=0018FF88,ESP=00000000压入EC*前 ESP=0018FF88,ESP=00000000压入EC*后 ESP=0018FF84,ESP=00000000压入ED*前 ESP=0018FF84,ESP=00000000压入ED*后 ESP=0018FF80,ESP=FFFFC000操作过程中所用到的指令:INCLUDE Irvine32.inc.codemain PROCcall DumpRegsmov
5、 ea*,espcall DumpRegspush ea*call DumpRegspush eb*call DumpRegspush ec*call DumpRegspush ed*call DumpRegse*itmain endpEND main将堆栈中的容依次弹出到EA*、EB*、EC*、ED*四个存放器,注意观察栈指针存放器和堆栈容的变化。记录:弹出到EA*前 ESP=0018FF90,ESP=00000000弹出到EA*后 ESP=0018FF94,ESP=00000000 弹出到EB*前 ESP=0018FF94,ESP=00000000弹出到EB*后 ESP=0018FF98,
6、ESP=00000000 弹出到EC*前 ESP=0018FF98,ESP=00000000 弹出到EC*后 ESP=0018FF9C,ESP=E18A40B7 弹出到ED*前 ESP=0018FF9C,ESP= E18A40B7 弹出到ED*后 ESP=0018FFA0,ESP= FFFFF801 操作过程中所用到的指令:include Irvine32.inc.codemain procmov esi,espcall DumpRegspush ea*mov esi,espcall DumpRegspush eb*mov esi,espcall DumpRegspush ec*mov esi
7、,espcall DumpRegspush ed*pop ed*mov esi,espcall DumpRegspop ec*mov esi,espcall DumpRegspop eb*mov esi,espcall DumpRegspop ea*mov esi,espcall DumpRegse*itmain endpend main3EA* =3F56H,EC* =4690H,利用交换指令交换这两个存放器的容。记录:交换前 EA*= 00003F56 , EC*=00004690 交换后 EA*= 00004690 , EC*=00003F56 操作过程中所用到的指令:Include I
8、rvine32.inc.codemain PROCmov ea*,3F56Hmov ec*,4690Hcall DumpRegs*chg ea*,ec*call DumpRegse*itmain ENDPEND main实验二逻辑指令、跳转指令与分支程序设计、 实验目的:了解和掌握逻辑指令、比较指令、无条件有条件转移类指令的功能和作用,以及此类指令的使用方法。、 实验要求:具体了解和掌握逻辑指令、比较指令、无条件有条件转移类指令的使用和在使用时应注意的问题,学习分支型程序设计的一般方法。在DEBUG系统状态下,分别编制、调试并记录以下逻辑指令程序段的每一条指令的运行情况: mov al,41
9、al=29H or al,20 al=3DH mov al,66 al=42H and al,0df al=00H mov EA*,5678 EA*=0000162EH *or EA*,EA* EA*=00000000H mov EA*,0ff00 EA*=0000FF00H not EA* EA*=FFFF00FFH mov EA*,1234 EA*=000004D2H test EA*,1 EA*=000004D2H SF=0 ZF=1 OF=0 test EA*,2 EA*=000004D2H SF=0 ZF=0 OF=0 test EA*,4 EA*=000004D2H SF=0 ZF
10、=1 OF=0 test EA*,8 EA*=000004D2H SF=0 ZF=1 OF=0 test EA*,10 EA*=000004D2H SF=0 ZF=0 OF=0 test EA*,20 EA*=000004D2H SF=0 ZF=0 OF=0 test EA*,40 EA*=000004D2H SF=0 ZF=1 OF=0 test EA*,80 EA*=000004D2H SF=0 ZF=0 OF=0test指令的作用是_将原操作数与目的操作数相与,但结果不送会目的操作数,只改变标志位,并不修改操作数_。 (2) DATA单元开场存放三个带符号数,编制程序,检查三个数据是否同
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 东北大学 汇编 实验

链接地址:https://www.desk33.com/p-9580.html