地址寄存器

Posted Lyra

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了地址寄存器相关的知识,希望对你有一定的参考价值。

段地址
偏移

image
左边的是段地址 右边的是偏移地址
8086 cpu 字长16位 数据总线20条
cpu最多寻址空间为2^16 数据总线却有20条
cpu无法只能寻址16位 无法寻址20位
那么怎么解决呢
既然一个寄存器无法存储20位那就拿两个cpu来存储
一个用来存段地址 一个用来存偏移地址
物理地址 = 段地址 * 16 + 偏移地址

如果段地址太小的话 * 16 + 偏移地址会无法找到物理地址
如 有两个纸条 每个纸条只能传输三位 要表示一个4位的数 可以这样表示
如 要表示7166
可以700 * 10 + 166
如果太小的话
10 * 10 + 7066
第二个纸条会变成四位 无法找到真实数字

cs ds ss es

以上是关于地址寄存器的主要内容,如果未能解决你的问题,请参考以下文章

汇编语言程序设计中,段寄存器的内容和偏移量合起来是内存地址,

8086汇编 段寄存器

ARM如何分配寄存器地址!

Linux 内核 内存管理内存映射原理 ① ( 物理地址空间 | 外围设备寄存器 | 外围设备寄存器的物理地址 映射到 虚拟地址空间 )

keil51中如何用C语言定义寄存器的地址并给地址赋值

汇编书中“存于寄存器内的地址可用来指向内存的某个位置,即寻址”