计算机的数字都是补码存在,为什么又说基址寄存器的数是原码?

计算机的数字都是补码存在,为什么又说基址寄存器的数是原码?

· json · rss
Subscribe:

About

由以下几个点共同构成:

1.基址寄存器保存的地址

2.MAR是原码

因此基址寄存器保存的是原码。

至于为什么MAR保存的是原码?

这是因为存储器确定存储位置的过程是一种基于bit位读取的过程。我们先确定了读取一个字节的对应的地址的bit位高低,再将这个bit位直接映射成数字。

但是要注意,基址寄存器保存的是无符号原码(uint),因此范围内不存在负数。