我刚刚开始读一本关于 8086 微处理器组装和计算机内部部件的书。在关于内存的章节中,我读到,为了弥合 20 位地址总线和 16 位寄存器之间的差距,内存被分成不同的段。值得注意的是,逻辑内存地址由 2 个寄存器组成,一个寄存器保存段的基址,另一个寄存器保存偏移量。它还说每个段的大小为 64KB(2^16 个地址)。
然后,书中解释了如何将逻辑地址转换为物理地址。书中说,要获得段的基地址,我需要将段号乘以 16,例如,段 0x0002 从 0x00020 开始,段 0x0003 从 0x00030 开始。
据我理解,这意味着每个段仅包含 16 个字节?而不是之前提到的 64KB?