经常有朋友问我,经常听说什么32位和64位,也经常看到2个数字,但就是不知道其中意思,也不明白其中区别。今天就给大家做个简要阐述。
首先一个 64 位的 CPU,内部可能有外部数据总线或不同大小的地址总线,可能比较大或比较小;术语“64位”也常用于描述这些总线的大小。例如,目前有许多机器有着使用 64 位总线的 32 位处理器(如最初的 Pentium 和之后的 CPU),因此有时会被称作“64位”。同样的,某些 16 位处理器(如 MC68000,摩托罗拉公司生产的一款16位处理器,因集成约68000个晶体管而得名)指的是 16/32 位处理器具有 16 位的总线,不过内部也有一些 32 位的性能。这一术语也可能指计算机指令集的指令长度,或其它的数据项(如常见的 64 位双精度浮点数)。去掉进一步的条件,“64位”计算机架构一般具有 64 位宽的整数型寄存器,它可支持(内部和外部两者) 64 位“区块”(chunk)的整数型数据。
32位也是同理。
至于32位和64位的区别,简单点讲,32位系统CPU每频率周期内可以处理32bit的数据(4个字节),而64位系统CPU一次可以处理64bit的数据(8个字节)。现在X86架构的处理器都是64位的,可以向下兼容32位的操作系统(即,可以安装32位或64位的操作系统);而以前老的32位的处理器是无法安装64位系统的。理论上来说,64位系统性能会更好,但现在市面上大部份软件都是基于32位系统开发的,运行在64位系统下发挥不出64位的优势,而且还可能碰到兼容性问题。