求助哇!!!!对于实验5第二题的一点疑问
本帖最后由 loop 于 2011-5-29 23:33 编辑这是代码:assume ds:data,cs:code,ss:stack
data segment
dw 0123h,0456h
data ends
stack segment
dw 0,0 ;向系统妈妈申请2个字类型单元,当做栈来使用,段地址不说,偏移地址是4,6,(转下面注释部分)
stack ends
code segment
start: mov ax,stack
mov ss,ax
mov sp,16;既然偏移地址4,6,那么这里偏移地址指向16,还在栈中么???
mov ax,data
mov ds,ax
push ds:
push ds:
pop ds:
pop ds:
mov ax,4c00h
int 21h
code ends
end start 本帖最后由 weixianlang 于 2011-5-8 18:44 编辑
晕啊,不懂! 本帖最后由 weixianlang 于 2011-5-8 18:44 编辑
改下,刚才回答回答错了! 这个问题我也提过诶。。。。
我的理解。。栈够用就行了。
其实movsp,4在这里也是可以的,。
http://bbs.fishc.com/forum.php?mod=viewthread&tid=1490&extra=page%3D3 呃...其实我是这么理解的...只是不确定... 在不在栈中,其实是看你的栈顶指针在指向哪里的!mov SP,16也可以的,但规范的话。应该是 sp=4的。因为你申请了两个字空间了嘛! 本帖最后由 超越自我 于 2011-5-16 22:24 编辑
楼上正解!sp指向16,只是后面的那12个字节单元中的数据不一定为0而已,也是在栈段中的。
页:
[1]