实验1 8086汇编指令编码和调试

任务2

 实验1 8086汇编指令编码和调试

 

实验1 8086汇编指令编码和调试

 结论:不能修改。因为ROM为只读内存,不能这样进行修改。可以通过刷固件等方法进行修改。

 

任务3

 实验1 8086汇编指令编码和调试实验1 8086汇编指令编码和调试

 实验1 8086汇编指令编码和调试

 任务4

-a

mov ax, 20

mov ds, ax

mov ss, ax

mov sp, 30

push [0] ; 执行后,寄存器(sp) = __002E__

push [2] ; 执行后,寄存器(sp) = __002C_

push [4] ; 执行后,寄存器(sp) = _002A___

push [6] ; 执行后,寄存器(sp) = __0028__

pop [6] ; 执行后,寄存器(sp) = _ 002A___

pop [4] ; 执行后,寄存器(sp) = __002C__

pop [2] ; 执行后,寄存器(sp) = __002E__

pop [0] ; 执行后,寄存器(sp) = __0030__

1.

栈顶的逻辑地址是0020:0030,物理地址是00230H

2.

 实验1 8086汇编指令编码和调试

 

3.

实验1 8086汇编指令编码和调试

 4.

 

 实验1 8086汇编指令编码和调试

 任务5

1.

没有暂停,mov sp,30 在mov ss,ax后跟着执行了,

2.

进栈时遵守后进先出原则且低位在前

任务6

assume cs:code

code segment

start:

  mov cx, 10

  mov dl, '0'

s: mov ah, 2

  int 21h

  add dl, 1

  loop s

  mov ah,4ch

  int 21h

code ends

end start

实验1 8086汇编指令编码和调试

 实验1 8086汇编指令编码和调试

 

任务7

1.

因为是复制指令所以ds指向代码段寄存器cs

CX代表循环执行的次数所以是200

 

 2.

实验1 8086汇编指令编码和调试

 

 总结:通过这次实验发现了自己在编码方面存在的不足,同时发现loops只能用-p

 

上一篇:实验1 8086汇编指令编码与调试


下一篇:8086汇编指令编码和调试