如下这段代码:
assume cs:codesg
stack segment
db 16 dup (0)
stack ends
codesg segment
start: mov ax,stack
mov ss,ax
mov sp,16
ret
codesg ends
将上面的代码编译后进行如下调试:
-u
182A:0000 B82918 MOV AX,1829 ;获取到栈段地址为:1829
182A:0003 8ED0 MOV SS,AX
182A:0005 BC1000 MOV SP,0010
182A:0008 C3 RET
-d 1829:0 f ;查看栈段的初始值
1829:0000 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ;值都为零
-t ;执行MOV AX,1829命令
AX=1829 BX=0000 CX=0019 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000
DS=1819 ES=1819 SS=1829 CS=182A IP=0003 NV UP EI PL NZ NA PO NC
182A:0003 8ED0 MOV SS,AX
-d 1829:0 f ;查看栈段值
1829:0000 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ;值不变
-t ;执行MOV SS,AX命令
AX=1829 BX=0000 CX=0019 DX=0000 SP=0010 BP=0000 SI=0000 DI=0000
DS=1819 ES=1819 SS=1829 CS=182A IP=0008 NV UP EI PL NZ NA PO NC