t命令执行了两步
本帖最后由 mhhnjuol 于 2015-1-19 14:21 编辑assume cs:code, ds:a,ds:b, ds:d
a segment
db 1,2,3,4,5,6,7,8
a ends
b segment
db 1,2,3,4,5,6,7,8
b ends
d segment
db 0,0,0,0,0,0,0,0
d ends
code segment
start :
mov ax, a
mov ds , ax
mov ax, b
mov es, ax
mov ax, d
mov ss, ax
mov cx, 8
mov bx, 0
s:mov al,
addal, es:
mov ss:, al
inc bx
loop s
mov ax, 4c00H
int 21H
code ends
end start
在debug执行mov ss,ax时,下一条指令mov cx, 8也会被一起执行,这是为什么,求解答
用t执行完mov ss,ax以后,下条指令自动执行,不管你是什么指令,全是一起执行的,栈操作后有一个SP+2或者-2,那是CPU自动执行的,所以后面的指令也一并执行了 谢谢啦,终于懂了:big 栈操作后有一个SP+2或者-2,那是CPU自动执行的,所以后面的指令也一并执行.
页:
[1]