码迷,mamicode.com
首页 > 其他好文 > 详细

实模式下地址的计算

时间:2017-06-03 17:20:49      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:偏移地址   模式   生成   相加   地址   第一个   寄存器   需要   nbsp   

      实模式下,寄存器为16位,为了能够访问1MB的内存空间,一般使用两个16位寄存器进行地址生成,一个寄存器内装入段地址(该寄存器叫做段寄存器),一个装入偏移地址。其真实物理地址的计算公式为:

物理地址=段地址*16+偏移地址

      即将段地址左移4位,然后和偏移地址相加,即得到真实物理地址。

      然而,当我们得到一个真实物理地址时,如何计算段地址和逻辑地址呢?

  假设得到一个5位数的物理地址,例如0x10fff,我们可将其放在两个寄存器中,第一个寄存器为0x0001,第二个寄存器为0x0fff,则是需要将第一个寄存器右移4位,且移出位放回左侧即可得到段地址,偏移地址就为第二个寄存器中的地址。

实模式下地址的计算

标签:偏移地址   模式   生成   相加   地址   第一个   寄存器   需要   nbsp   

原文地址:http://www.cnblogs.com/gljwin/p/6937636.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!