鱼C论坛

 找回密码
 立即注册
查看: 2805|回复: 5

关于栈 基本上没什么问题 就一点

[复制链接]
发表于 2011-9-15 23:11:56 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
是不是感觉问题3.8编程的第四部是多余的 可以省略掉的
还有一点要问的是为什么SS必须写两步不能直接 mov ss,1000h  mov 而SP就可以直接sp,0010h
求指教
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-9-16 10:20:37 | 显示全部楼层
1、省去也没有什么问题,但这里3.8中设置了第四步,使ax-bx清零,可以更好的看出pop指令之后ax-bx的变化。如果不清零的话,比如ax最开始是0002h,push ax后,ax寄存器里的值依然为0002H。pop后也依然为0002h,你看不出变化,实质上却是有出栈写入ax这个操作的。
2、sp总有个初始值,如果只设定ss,不设定sp的话,你怎么确定你的出入栈操作需要的栈顶位置一定是你期望的位置?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-9-16 21:53:47 | 显示全部楼层
:funk:不知道是我表达的意思不清楚还是你没有理解清楚 我意思SS为什么不能两步合为一步
或者是你的解释是对的  我还没有彻底的懂栈  
不过还是很感谢你  谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-9-16 22:24:29 | 显示全部楼层
1000h属于立即数,mov 指令的规则,不能把立即数直接mov到段寄存器
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-9-16 22:34:07 | 显示全部楼层
这样说就很好理解了  呵呵 谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-9-16 22:41:39 | 显示全部楼层
我没看清,呵呵。。
同4#解释,SS,DS,ES均如此
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-11-19 06:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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