确定物理地址的方法
物理地址
-
CPU访问内存单元时要给出内存单元的地址
-
所有内存单元构成的存储空间是一个一维的线性空间
-
每一个内存单元在这个空间都有唯一的地址,这个唯一的地址称为物理地址
-
事实
- 8086有20位地址总线,可传送20位地址,寻址能力
为1M。 - 8086是16位结构的CPU
- 运算器一次最多可以处理16位的数据,寄存器
的最大宽度为16位。 - 在8086内部处理的、传输、暂存的她址也是l多位,寻址能力也只有64KB !
- 运算器一次最多可以处理16位的数据,寄存器
- 8086有20位地址总线,可传送20位地址,寻址能力
-
问题:8086如何处理在寻址空间上的这个矛盾?!
8086CPU给出物理地址的方法
- 8086CPU的解决方法
- 用两个16位地址(段地址,偏移地址)合成一个20位的物理地址
- 地址加法器合成物理地址的方法
- 物理地址=段地址*16+偏移地址
“段地址×16+偏移地址=物理地址”的本质含义
- 要解决的问题
用两个16位的地址(段地址、偏移地址) ,相加得到一个20位的物理地址 - 本质含义
(段地址、偏移地址) ,相加得到一个20位的物理地址 - 本质含义
CPU在访问内存时,用一个基础地址(段地址×16)和一个相对于基础地址的偏移地址相加,给出内存单元的物理地址。