关于栈 基本上没什么问题 就一点
是不是感觉问题3.8编程的第四部是多余的 可以省略掉的还有一点要问的是为什么SS必须写两步不能直接 mov ss,1000hmov 而SP就可以直接sp,0010h
求指教
1、省去也没有什么问题,但这里3.8中设置了第四步,使ax-bx清零,可以更好的看出pop指令之后ax-bx的变化。如果不清零的话,比如ax最开始是0002h,push ax后,ax寄存器里的值依然为0002H。pop后也依然为0002h,你看不出变化,实质上却是有出栈写入ax这个操作的。
2、sp总有个初始值,如果只设定ss,不设定sp的话,你怎么确定你的出入栈操作需要的栈顶位置一定是你期望的位置? :funk:不知道是我表达的意思不清楚还是你没有理解清楚 我意思SS为什么不能两步合为一步
或者是你的解释是对的我还没有彻底的懂栈
不过还是很感谢你谢谢 1000h属于立即数,mov 指令的规则,不能把立即数直接mov到段寄存器 这样说就很好理解了呵呵 谢谢 我没看清,呵呵。。
同4#解释,SS,DS,ES均如此
页:
[1]