.data
SUM DW 250h
.text
push SUM
call func
....
func:
mov bp, sp
mov ax, [bp + 2]
inc ax
mov [bp + 2], ax
.....
当我使用push指令时,我是否推送SUM的引用,或者值? 在调用func后,SUM是否会发生变化?
答案 0 :(得分:0)
您可能希望取消引用传递给函数的地址
.data
SUM DW 250h
.text
push [SUM]
call func
....
func:
mov bp, sp
mov bx, [bp + 2]
mov ax,[bx]
inc ax
mov [bx],ax
mov [bp + 2], ax
.....
这看起来真的很迂回,我确信有一种更简单的方法,但我没有一台方便的机器。因为你不能使用[ax]而额外的环形交叉:(