您好,欢迎来到筏尚旅游网。
搜索
您的当前位置:首页实验内容

实验内容

来源:筏尚旅游网
实验1 数据传送指令

1、实验目的:了解和掌握 MOV、PUSH、POP、XCHG四条指令的作用和在编程中的用法。 2、实验要求:

(Ⅰ)采用立即数寻址方式将19E0H,3F56H,0AF37H,9A81H分别送给EAX、EBX、ECX、EDX四个寄存器。

记录:操作前 EAX= 、 EBX= 、 ECX= 、 EDX= 操作后 EAX= 、 EBX= 、 ECX= 、 EDX= 操作过程中所用到的指令:

(Ⅱ)采用采用寄存器寻址方式将19E0H送给EBX、ECX、EDX三个寄存器。

记录:操作前 EAX= 、 EBX= 、 ECX= 、 EDX= 操作后 EAX= 、 EBX= 、 ECX= 、 EDX= 操作过程中所用到的指令:

(2)对EAX、EBX、ECX、EDX四个寄存器进行出入堆栈的操作。

(Ⅰ)将EAX、EBX、ECX、EDX四个寄存器的内容依次压入堆栈中,注意观察栈指针寄存器和堆栈内容的变化。

记录:压入EAX前 ESP= , (ESP)= 压入EAX后 ESP= , (ESP)= 压入EBX前 ESP= , (ESP)= 压入EBX后 ESP= , (ESP)= 压入ECX前 ESP= , (ESP)= 压入ECX后 ESP= , (ESP)= 压入EDX前 ESP= , (ESP)= 压入EDX后 ESP= , (ESP)= 操作过程中所用到的指令:

(Ⅱ)将堆栈中的内容依次弹出到EAX、EBX、ECX、EDX四个寄存器, 注意观察栈指针寄存器和堆栈内容的变化。

记录:弹出到EAX前 ESP= , (ESP)= 弹出到EAX后 ESP= , (ESP)= 弹出到EBX前 ESP= , (ESP)= 弹出到EBX后 ESP= , (ESP)= 弹出到ECX前 ESP= , (ESP)=

弹出到ECX后 ESP= , (ESP)= 弹出到EDX前 ESP= , (ESP)= 弹出到EDX后 ESP= , (ESP)= 操作过程中所用到的指令:

(3)已知EAX=3F56H,分别利用存储器直接寻址方式和存储器间接寻址方式,将EAX寄存器的内容送到内存单元中。 (Ⅰ)存储器直接寻址方式

记录:送出到EAX前 EAX= , [var]= 送出到EAX后 EAX= , [var]= 操作过程中所用到的指令:

(Ⅱ)存储器间接寻址方式

记录:送出到EAX前 EAX= , [var]= 用于存放地址码的寄存器( )= 送出到EAX后 EAX= , [var]= 操作过程中所用到的指令:

(4)已知EAX =3F56H,ECX =4690H,利用交换指令交换这两个寄存器的内容。 记录:交换前 EAX= , ECX= 交换后 EAX= , ECX= 操作过程中所用到的指令:

实验二 逻辑指令、跳转指令与分支程序设计

1、实验目的:了解和掌握逻辑指令、比较指令、无条件/有条件转移类指令的功能和作用,以及此类指令的使用方法。

2、实验要求:具体了解和掌握逻辑指令、比较指令、无条件/有条件转移类指令的使用和在使用时应注意的问题,学习分支型程序设计的一般方法。

(1)在DEBUG系统状态下,分别编制、调试并记录以下逻辑指令程序段的每一条指令的运行情况:

(Ⅰ)

mov al,41 ┃ or al,20 ┃ (Ⅱ)

mov al,66 ┃ and al,0df ┃ (Ⅲ) mov EAX,5678 ┃ xor EAX,EAX ┃ (Ⅳ) mov EAX,0ff00 ┃ not EAX ┃ (Ⅴ) mov EAX,1234 ┃ test EAX,1 ┃ test EAX,2 ┃ test EAX,4 ┃ test EAX,8 ┃ test EAX,10 ┃ test EAX,20 ┃ test EAX,40 ┃ test EAX,80 ┃ test指令的作用是_________。

(2) 已知DATA单元开始存放三个带符号数,编制程序,检查三个数据是否同号,若同时为正,则在显示器上显示“+”;同时为负,则显示“-”;否则显示空格“ ”。

要求:分别用三组数据(同时为正,同时为负,异号)调试程序,验证程序的正确性。

实验三 算术运算类指令、移位指令及循环程序设计

1、实验目的:了解和掌握加、减、乘、除指令的在程序设计中的用法和应注意的问题,了解和掌握移位指令的功能、作用和方法。了解和掌握循环控制类指令的功能、作用和方法。学会循环程序设计的方法。学习汇编语言输出输入语句的设计。

2、实验要求:具体了解和掌握算术类指令、移位指令和循环控制类指令的使用,以及在使用时应注意的问题,学习循环程序设计的一般方法。

(1)在DEBUG系统状态下,分别编制、调试并记录以下加、减程序段的每一条指令的运行情况,查看寄存器的结果: (Ⅰ)

MOV EAX,23 ┃ MOV EBX,0CEDFH ┃ ADD EAX,EBX ┃ (Ⅱ)

MOV EAX,23 ┃ MOV EBX,0CEDFH ┃ SUB EAX,EBX ┃ (Ⅲ)

MOV EAX,23 ┃ MOV EBX,0CEDFH ┃

ADD AH,BH ┃ ADD AL,BL ┃ (Ⅳ) MOV EAX,23 ┃ MOV EBX,0CEDFH ┃ ADD AH,BH ┃ ADC AL,BL ┃

(2)在DEBUG系统状态下,分别编制、调试并记录以下乘、除程序段的每一条指令的运行情况: (Ⅰ)

MOV AL,23 ┃ MOV BL,0CEH ┃ MUL BL ┃ (Ⅱ)

MOV AX,23 ┃ MOV BX,0CEDFH ┃ MUL BX ┃ (Ⅲ)

MOV AX,23 ┃ MOV BL,0CEH ┃ DIV BL ┃ (Ⅳ)

MOV AX,23 ┃ MOV DX,0856 ┃ MOV BX,0CEDFH ┃ DIV BX ┃

(3)在DEBUG系统状态下,分别编制、调试并记录以下移位指令程序段的每一条指令的运行情况:

(Ⅰ)

mov EAX,420 ┃ shl EAX,1 ┃ (Ⅱ) mov EAX,240 ┃ mov cl,4 ┃ shl EAX,cl ┃ (Ⅲ) mov EAX,8000 ┃ mov cl,4 ┃ shr EAX,cl ┃ (Ⅳ) mov EAX,8000 ┃ mov cl,4 ┃

sar EAX,cl ┃ (Ⅴ) mov EAX,8086 ┃ mov cl,4 ┃ rol EAX,cl ┃ (Ⅵ) mov EAX,8086 ┃ mov cl,4 ┃ ror EAX,cl ┃ (Ⅶ) mov EAX,8086 ┃ mov cl,4 ┃

rcl EAX,cl ┃ (Ⅷ) mov EAX,8086 ┃

mov cl,4 ┃ rcr EAX,cl ┃

rol与rcl、ror与rcr的区别在于rol和ror是将寄存器中的内容直接进行移位,而rcl和rcr是将寄存器中的内容与________中的内容一起进行移位,因此参加移位的数据比原来的数据位数____________。

(5) 已知DATA单元开始存放一组无符号的字节数据,数据长度在CNT单元存放。编制程序,检查该组数据中是否存在数据100,若存在,则在显示器上显示“Y”,否则显示“N”。

(6) 编制在屏幕上显示九九表的程序。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- efsc.cn 版权所有 赣ICP备2024042792号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务