计算物理地址时段寄存器低四位为什么为零

问题描述:

计算物理地址时段寄存器低四位为什么为零
1个回答 分类:综合 2014-10-27

问题解答:

我来补答
这是关于8088/8086 CPU的问题吧?其他CPU没有这种问题.
对于8088CPU,地址宽度是20位,寻址范围是1MB.这20 bit 地址分成高4位和低16位,高4位叫物理段地址,由段寄存器控制.所以段寄存器只有4位有效,在cpu指令中规定将段地址放在段寄存器的高4位中,而段寄存器的低4位用作偏移量.
这就是说低4位可以不为0,程序会将段寄存器的低4位与低16位的地址寄存器的高4位相加,得到最后访问的地址.
 
 
展开全文阅读
剩余:2000