trump 发表于 2014-6-19 00:21:34

实验2 用机器指令和汇编指令编程

本帖最后由 trump 于 2014-6-19 00:41 编辑

(1) 使用Debug,将上面的程序段写入内存,逐条执行。根据指令执行后的实际运行情况填空。
(2) 为什么2000:0~2000:f中的内容会发生变化。

此时,可以确定2000:C处是CS的值,2000:A处是IP的值。

此时,可以确定2000:6处是AX的值。
此时,2000:0~F集体前移一个字长(2000:4是AX的值,2000:A处是CS的值,2000:8处是IP的值),2000:E处被写入AX。

此时,进一步确定2000:5处是AX的值。

此时,2000:0~F集体前移一个字长(2000:2是AX的值,2000:8处是CS的值,2000:6处是IP的值),2000:C处被写入AX。


综上,可以猜测,8086会自动将AX、CS、IP等寄存器的值寄存在栈中。

页: [1]
查看完整版本: 实验2 用机器指令和汇编指令编程