问题描述
- 保护模式栈边界的问题
- X86汇编语言-从实模式到保护模式 有这样一道题:
当前栈段描述符的B位是1,基地址为0X00700000,界限值为0XFFFE。那么,在32位模式下,该栈段的有效地址范围是0X00700000~( )。当ESP的内容为0XFFFFF002时,还能压入一个双字吗?为什么?当前栈段是向下扩展的。
我的答案是0X00700000+0XFFFFE*0X1000+0XFFF=0X1006FEFFF
去掉溢出位=0X006FEFFF
不过看到第二问时候我就知道我错了。可是书上又说,实际使用的栈段边界就是段内不允许访问的最低端偏移地址,所以又感觉我的是对的。栈段的边界真的搞不懂! 求给出具体的思路,最好带上备注,very thank you!
时间: 2024-11-02 07:52:21