|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 2668305540 于 2013-5-31 13:02 编辑
assume cs:codesg
codesg segment
mov ax,2000h
mov ss,ax
mov sp,0
add sp,10
pop ax
pop bx
push ax
push bx
pop ax
pop bx
mov ax,4c00h
int 21h
codesg ends
代码我看得懂
就是T运行后栈中的内容不明白
这是第一个pop前的栈内容:
-t
AX=2000 BX=0000 CX=0016 DX=0000 SP=000A BP=0000 SI=0000 DI=0000
DS=140E ES=140E SS=2000 CS=141E IP=000B NV UP EI PL NZ NA PE NC
141E:000B 58 POP AX
-d 2000:a
2000:0000 00 00 00 00 00 00 ......
2000:0010 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
pop ax后的:
-t
AX=0000 BX=0000 CX=0016 DX=0000 SP=000C BP=0000 SI=0000 DI=0000
DS=140E ES=140E SS=2000 CS=141E IP=000C NV UP EI PL NZ NA PE NC
141E:000C 5B POP BX
-d 2000:a
2000:0000 08 0E 00 00 00 00 ......
2000:0010 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
file:///C:\Documents and Settings\William\Application Data\Tencent\Users\2668305540\QQ\WinTemp\RichOle\JVY`$Q7B(GWNU1N3Z3CIEEV.jpg各步后的栈原地址内容如下:
-t
AX=0000 BX=0000 CX=0016 DX=0000 SP=000E BP=0000 SI=0000 DI=0000
DS=140E ES=140E SS=2000 CS=141E IP=000D NV UP EI PL NZ NA PE NC
141E:000D 50 PUSH AX
-d 2000:a
2000:0000 1E 14 08 0E 00 00 ......
2000:0010 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
-t
AX=0000 BX=0000 CX=0016 DX=0000 SP=000C BP=0000 SI=0000 DI=0000
DS=140E ES=140E SS=2000 CS=141E IP=000E NV UP EI PL NZ NA PE NC
141E:000E 53 PUSH BX
-d 2000:a
2000:0000 08 0E 00 00 00 00 ......
2000:0010 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
-t
AX=0000 BX=0000 CX=0016 DX=0000 SP=000A BP=0000 SI=0000 DI=0000
DS=140E ES=140E SS=2000 CS=141E IP=000F NV UP EI PL NZ NA PE NC
141E:000F 58 POP AX
-d 2000:a
2000:0000 00 00 00 00 00 00 ......
2000:0010 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
-t
AX=0000 BX=0000 CX=0016 DX=0000 SP=000C BP=0000 SI=0000 DI=0000
DS=140E ES=140E SS=2000 CS=141E IP=0010 NV UP EI PL NZ NA PE NC
141E:0010 5B POP BX
-d 2000:a
2000:0000 08 0E 00 00 00 00 ......
2000:0010 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
-t
AX=0000 BX=0000 CX=0016 DX=0000 SP=000E BP=0000 SI=0000 DI=0000
DS=140E ES=140E SS=2000 CS=141E IP=0011 NV UP EI PL NZ NA PE NC
141E:0011 B8004C MOV AX,4C00
-d 2000:a
2000:0000 1E 14 08 0E 00 00 ......
2000:0010 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
没有push只是pop为什么pop出去后原来的栈顶会变?
我原来想是pop或是push后栈顶以上更小的地址空间是不会变的,为什么会变呢?
|
|