关于实模式物理内存寻址

| 我和我的朋友正在集思广益,讨论有关物理内存以实模式寻址的问题,我们无法解决这个问题。开始。 在实模式下,将16与段选择器寄存器相乘并与偏移寄存器相加,以获得20位物理地址。因此,这导致片段重叠的可能性。 例如。 \“段选择器-> 0040&偏移-> 0010 \” = \“段选择器-> 0030&偏移-> 0110 \” 我们的理解是,段选择器在添加到偏移量之前先移位了4位。因此,为了避免这种分段,为什么不将分段选择器移动6(将其乘以64),然后再将其添加到偏移量中。我们认为,这将消除内存重叠的可能性。 它是否与他们在此期间面临的任何硬件限制有关,还是仅仅是设计决定。     
已邀请:
这是由于设计限制。他们有一个20位地址总线,最简单的事情就是让段寄存器选择该段,然后为其添加偏移量(对于超出20位地址总线的部分,它环绕到内存底部)。     
移位4可以得到整个兆字节的地址空间。哇! 该设计是在8位系统配置有64 kB的时候完成的,以供那些足以购买那么多内存的丰富系统使用。并且有足够大的盒子来容纳所有这些内存板。 这是16 kB的样子:http://www.s100computers.com/Hardware%20Folder/CCS/16K%20RAM/16K%20RAM.htm 如果要安装4 MB,则首先必须租用另一个空间来存储内存板!     

要回复问题请先登录注册