鱼C论坛

 找回密码
 立即注册
查看: 2090|回复: 4

关于入栈后,ss:sp的指向问题

[复制链接]
发表于 2013-2-21 09:41:54 | 显示全部楼层 |阅读模式
1鱼币
最近在学习王爽《汇编语言》,其中说到在执行了入栈指令后,sp=sp-2.如果入栈的是个字(即16位的)我能够理解。但是如果入栈的是个字节,比如push 0eh;………………这个执行了是sp-1吗?
                        又如果push 000eh; ……………………这个执行了是sp-2吗?

最佳答案

查看完整内容

push 0eh,sp 依然是 sp = sp - 2,因为往栈中存放数据默认是按照字型存放的,即2个字节,这应该是一种规定,详细请参考 王爽汇编 第二版 8.5(指令要处理的数据有多长),其中,在166页(3)其他方法 有提及
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2013-2-21 09:41:55 | 显示全部楼层
push 0eh,sp 依然是 sp = sp - 2,因为往栈中存放数据默认是按照字型存放的,即2个字节,这应该是一种规定,详细请参考 王爽汇编 第二版 8.5(指令要处理的数据有多长),其中,在166页(3)其他方法 有提及
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2013-2-21 19:02:01 | 显示全部楼层
PUSH 和POP 都只能是字, 不能是字节
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2013-2-21 23:32:06 | 显示全部楼层
记得栈空间是以字为单位的,如果入栈的是字节,那么sp也一样-2...这个是不变的!!!
我是新手,学习中ing....
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2013-2-22 13:30:53 | 显示全部楼层
谢谢各位的 解答,了解了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-18 00:49

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表