(东北大学)汇编实验报告

(东北大学)汇编实验报告

ID:9804373

大小:278.50 KB

页数:22页

时间:2018-05-10

(东北大学)汇编实验报告_第1页
(东北大学)汇编实验报告_第2页
(东北大学)汇编实验报告_第3页
(东北大学)汇编实验报告_第4页
(东北大学)汇编实验报告_第5页
资源描述:

《(东北大学)汇编实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、汇编语言程序设计实验报告实验名称汇编综合实验班级学号姓名日期成绩评阅人软件学院一、实验目的与意义了解和掌握MOV、PUSH、POP、XCHG四条指令的作用和在编程中的用法。了解和掌握并且能够简单的应用加、减、乘、除指令的在程序设计中的用法,了解和掌握并且能简单的应用移位指令,了解和掌握并且能简单应用循环控制类指令,掌握循环程序设计的方法。学习汇编语言输出输入语句的应用,能够简单的运用相关的编译软件,能够初步认识到计算机语言底层的操作。二、实验环境操作系统:windows7调试软件名称及版本号:MicrosoftVisualStudio2010三、实验的预习内

2、容预习的主要内容:预习了加减乘除指令,移位指令,循环指令的作用及方法,学习力函数的调用,在屏幕上打出指定字符和数字;实验思路:将寄存器赋值,然后对寄存器进行加减乘除,移位的运算,观察寄存器的数值变化,用逐语句观察循环语句中程序执行的顺序,了解循环的作用四、实验的步骤与调试方法1、实验的大致步骤:通过在.code中填入实验所给的数据,通过逐语句调试来观察各个寄存器的数值变化;在.code中对程序进行加减乘除,移位操作,观察寄存器的变化实验中遇到的问题及调试方法:在做9*9乘法表时,由于是32位的操作系统,无法用中断INT来进行回车换行,最后通过给eax赋值0a

3、h,直接打出回车2、在实验中遇到的问题及调试方法开始的时候没有采用逐语句调试的方法,由于没有输出,看不到结果,最后采用逐语句的调试方法,看到寄存器的变化在调试时报错,后来发现在目的操作数和源操作数之间忘加逗号了导致程序无法运行五.实验数据与实验结果实验一:(1)(I)采用立即数寻址方式将19E0H,3F56H,0AF37H,9A81H分别送给EAX、EBX、ECX、EDX四个寄存器。操作前:EAX=76A51102EBX=7FFD9000ECX=00000000EDX=01291005操作后:EAX=000019E0EBX=00003F56ECX=0000A

4、F37EDX=00009A81操作过程中所用到的指令::moveax,19E0H           movebx,3F56H           movecx,0AF37H           movedx,9A81H(Ⅱ)采用采用寄存器寻址方式将19E0H送给EBX、ECX、EDX三个寄存器。操作前:EAX=76A51102EBX=7FFD3000ECX=00000000EDX=00F31005操作后:EAX=000019E0EBX=000019E0ECX=000019E0EDX=000019E0操作过程中所用到的指令:moveax,19E0H     

5、     movebx,eax          movecx,eax          movedx,eax对EAX、EBX、ECX、EDX四个寄存器进行出入堆栈的操作。(2)(Ⅰ)将EAX、EBX、ECX、EDX四个寄存器的内容依次压入堆栈中,注意观察栈指针寄存器和堆栈内容的变化 记录:压入EAX前ESP=0020FCE4压入EAX后ESP=0020FCE0压入EBX前ESP=002AFD94压入EBX后ESP=002AFD90压入ECX前ESP=001EF818压入ECX后ESP=001EF814压入EDX前ESP=0035FD24压入EDX后ESP=

6、0035FD20操作过程中所用到的指令:pusheax          pushebx          pushecx          pushedx(Ⅱ)将堆栈中的内容依次弹出到EAX、EBX、ECX、EDX四个寄存器,注意观察栈指针寄存器和堆栈内容的变化记录:弹出到EAX前ESP=002BF878弹出到EAX后ESP=002BF87C弹出到EBX前ESP=0021FB2C弹出到EBX后ESP=0021FB30弹出到ECX前ESP=0024FE88弹出到ECX后ESP=0024FE8C弹出到EDX前ESP=0022FDC8弹出到EDX后ESP=002

7、2FDCC操作过程中所用到的指令:popeax          popebx          popecx          popedx(3)已知EAX=3F56H,ECX=4690H,利用交换指令交换这两个寄存器的内容。记录:操作前:EAX=00003F56 ECX=00004690操作后:EAX=00004690 ECX=00003F56操作过程中所用到的指令:moveax,3F56H              movecx,4690H              xchgeax,ecx实验二:在DEBUG系统状态下,分别编制、调试并记录以下逻辑指令

8、程序段的每一条指令的运行情况:(Ⅰ)moval,41

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。