关于pop指令的新手问题
小弟刚开始学汇编,看到王爽的检测点6.1的第二小题,在电脑上debug了一下,发现了些疑惑,求大神解答!!首先这是代码
assume cs:code
code segment
dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
dw 0,0,0,0,0,0,0,0
start: mov ax,cs
mov ss,ax
mov sp,20h
mov ax,0
mov ds,ax
mov bx,0
mov cx,8
s: push
pop cs:
add bx,2
loop s
mov ax,4c00h
int 21h
code ends
end start
1.当我debug后用t单步调试的时候,执行完第二条指令mov ss,ax后,原来放着8个0的0-f内存单元就被不知道什么数据占了,为啥会这样呢???
2.当我执行完pop指令后,内存单元里面的数据立即就被改了,但是书上不是说数据还是在内存单元里面的吗?只是不在栈里面,而到下一次再执行push指令的时候数据才会被覆盖。但是出现了这问题,这是为何啊。。???
坐等大神解答!!!
这个你不要鸟它,应该是中断程序的问题,只要过程正确就行了, 但是那个pop指令的问题呢,难道也是中断程序的问题吗?
强烈支持楼主ing……
页:
[1]