计算机的“字长”---俗称是多少位的 CPU
这里上下文特指计算机的字长,它就是CPU里寄存器的宽度,CPU里除了控制器、运算器之外,还有很多寄存器(当然现在CPU还有Cache等),机器的字长就是其中通用寄存器(GPR)的位宽。
CPU在设计的时候会让运算器和通用寄存器的位宽保持一致,在硬件上就是CPU一次能进行的多少位数据运算,所以字长反应了CPU的数据运算能力(一次可以进行几位的数据运算,得到的结果是几位的)。
数据总线位宽
数据总线细分又分外部数据总线和内部数据总线,处理器在设计时一般通用寄存器 GPR 和运算器及内部数据总线是一致的,外部数据总线会链接内存、显卡、IO、设备等,外部数据总线反应的是 CPU 和外设的数据传送能力,而平时说的数据总线没特殊说明一般指外部数据总线,那“数据总线宽度和机器字长一致”这种说的就是不准确的。
地址总线位宽
在计算机里内存寻址分逻辑地址寻址和**物理地址寻址*
物理寻址
地址线反应的就是 物理地址的寻址能力。
逻辑寻址
指令执行时涉及指令寻址和操作数寻址,指令寻址肯定都是内存寻址,而操作数寻址中除了立即数寻址和寄存器寻址,其他都要进行内存访问,那就需要计算内存地址,内存地址的计算除了寄存器间接寻址不需要计算内存地址外,其他大都需要运算器去计算访存位置,上面介绍计算机“字长”概念时提到了,运算器字长决定了运算结果的位数,所以字长决定了计算机的逻辑地址寻址能力,在平时我们提的程序的地址空间其实说的都是这个逻辑地址范围。