关于汇编栈段的问题
假定安排10000H-1001FH为栈段,ss指向1000H,sp不是应该指向021H吗?还是020H?当执行push指令时,sp先自减2,这样应该是021H才对啊。本帖最后由 NeBen 于 2012-7-5 10:18 编辑
假定安排10000H-1001FH为栈段,当栈段中有储存一个字的时候指针是指向1001EH,这个没有Problem把,然后因栈段是空的(将相当于POP了一次)所以SP要加2,即1001EH+2H=10020H,所以指向020H,你没认真听课把,解释得很清楚了、 我觉得应该是0020H 这里我也是搞不太清楚!不过我用栈时栈底是加1 ss sp 不应该出现奇数吧。 本帖最后由 NeBen 于 2012-7-4 18:29 编辑
你之所以这么理解是因为把PUSH进行的操作当成字节操作,实际上PUSH只进行字操作 NeBen 的解释是对的 netBean的解释很正确,把鱼币给人家吧 醉玉堡主 发表于 2012-7-5 08:19 static/image/common/back.gif
netBean的解释很正确,把鱼币给人家吧
哈哈,是NeBen :handshakesorry! 个人认为 当给定栈的长度范围的时候sp初始的位置 是在栈底的下一个高位的位置,如果按照楼主所说 sp的初始位置应该是021H的话 那假设压入一个字 sp先自减2sp指向的就是 01FH的位置了 那 字的高位放在哪里呢?没有地方放了哦 就是越界了 呵呵
页:
[1]