王爽汇编语言(第2版)实验2
(1) 使用Debug,将下面的程序段写入内存,逐条执行,根据指令执行后的实际运行情况填空。
mov ax,ffff
mov ds,ax
mov ax,2200
mov ss,ax
mov sp,0100
mov ax,[0] ;ax=5BEA
add ax,[2] ;ax=5CCA
mov bx,[4] ;bx=30F0
add bx,[6] ;bx=6021
push ax ;sp=00FE; 修改的内存单元地址是220FE内容为5CCA
push bx ;sp=00FC; 修改的内存单元地址是220FC内容为6021
pop ax ;sp=00FE; ax=6021
pop bx ;sp=0100; bx=5CCA
push [4] ;sp=00FE; 修改的内存单元地址是220FE内容为30F0
push [6] ;sp=00FC; 修改的内存单元地址是220FC内容为2F31
(2) 仔细观察图3.19中的实验过程,然后分析:为什么2000:0~2000:f中的内容会发生改变?
可能要再做些实验才能发现其中的规律。如果你在这里就正确回答了这个问题,那么要恭喜你,因为你有很好的悟性。大多数的学习者对这个问题还是比较迷惑的,不过不要紧,因为随着课程的进行,这个问题的答案将逐渐变得显而易见。

图3.19 用Debug进行的实验