V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
amiwrong123
V2EX  ›  程序员

对于一个段描述符,为什么说栈段的段界限的值加一,就是段内偏移量的最小值?

  •  
  •   amiwrong123 · 2023 年 2 月 2 日 · 634 次点击
    这是一个创建于 1156 天前的主题,其中的信息可能已经有所发展或是发生改变。

    对于堆栈段来说,段界限的值加一,就是段内偏移量的最小值。——《从实模式到保护模式》

    这句话我有点不理解,比如线性基地址是 0 ,段界限为 90 ,粒度为 1 字节,且 ESP 初始值为 100 ,那么实际上栈的有效范围就是[91,100]吗?还是应该是[90,99]? (这是一个闭区间)(因为栈是向下拓展的,感觉一下子有点想不明白了)

    另外还有一点,书中曾经描述过,执行 push pop 时,要么压入字,要么压入双字。也就是说,要么加减 2 ,要么加减 4 。那这句“段界限的值加一,就是段内偏移量的最小值”,不应该是至少是“段界限的值加二”吗?

    目前尚无回复
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   2442 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 04:39 · PVG 12:39 · LAX 21:39 · JFK 00:39
    ♥ Do have faith in what you're doing.