这里所说的64位是指CPU的位宽,大略的说,CPU位宽指的是一个时钟周期内CPU能处理的二进制位数,如8086 CPU是16位的,可以一次处理2个字节(16个bit),80386 CPU是32位,能一次处理4个字节,目前的CPU基本上64位的了,一次能处理8个字节。 我们的Windows操作系统也分为32位和64位,紧张是针对上面CPU的位宽做了些优化,比如32位的CPU就不能用64位的Windows(由于CPU一次只能处理32bit,而操作系统给你的指令是要处理64bit),但64位的CPU就可以运行32位的Windows,也能运行64位Windows。
64位CPU的优点是可以进行更大范围的整数运算,吞吐量大的程序运行起来会更快,但大家常常对CPU的位宽认识有一些误区,比如有人说为了支持更大的内存才CPU才升64位, 也有人认为32位系统只支持4GB内存,真的如此吗?

CPU的寻址能力与它的地址总线位宽有关,而我们常日说的CPU位宽指的是数据总线位宽,它和地址总线位宽半毛钱关系也没有,自然也与寻址能力无关。

数据总线位宽即是CPU整数型寄存器的位宽,CPU内的寄存器常日可分为三种:整数型、浮点型还有其他,而这三种寄存器中只有整数寄存器可以存放指针值也便是内存数据地址,非整数寄存器不可存放指针值,以是读写内存操作不能避开整数型寄存器的位脱期制 ,以64位CPU为例,这些CPU的内部整数型寄存器的位宽为64bit,支持整数的64bit宽度的算术与逻辑运算。
但这并不代表64位CPU的所有总线与寄存器都是64位的,不同类型的寄存器也可以有着不同的位宽,上面说的64位CPU的整数寄存器位宽是64位没错,但浮点寄存器就不一样了,比如奔驰MMX处理器所引入的MMX指令集首创了x86处理器支持SIMD操作的先河,该指令集定义了8个64位的浮点寄存器,而奔驰MMX本身只是个32位处理器。1999年推出,同样只有32位的奔驰3处理器新增了SSE指令集,与之配套的是8个128位寄存器,而后来的AVX2与FMA指令集可支持256位的运算,浮点寄存器也扩大到256位,目前CPU内部最大的是AVX-512指令集所用的512位寄存器。
CPU内有许多不同的寄存器
那CPU的地址总线位宽到底是个什么鬼?
Intel的阐明是Physical Address Extensions (PAE) is a feature that allows 32-bit processors to access a physical address space larger than 4 gigabytes.上面图片是Intel Xeon Processor E5-2698 v3的截图,专门就扩展物理地址作相识释,大意便是说这个是为了让32位的处理器能利用超过4GB的内存。这个PAE便是CPU的地址总线位宽,在8086这个16位CPU,它的地址总线位宽是20位,恰好能寻址1MB,80286它的PAE是24位,在PentiumII(32位CPU)时这个PAE变成了36位,可以支持64GB的寻址。64位CPU涌现之后,其地址总线位宽一样平常采取的是36位或者40位,它们寻址的物理地址空间为64GB或者1T。
那地址总线和数据总线有什么关系?可以这么理解,地址总线用来定位,数据总线用来传输,也便是当CPU须要从内存读取数据或向内存写入数据时,它利用地址总线来指定其须要访问的存储器块的物理地址,然后通过数据总线发送数据。
以是说,CPU的位宽和寻址能力是没有关系的,16位CPU的地址总线位宽可以是20位,32位CPU的地址总线可以是36位,64位CPU的地址总线位宽可以是40位。以是你下次一定不要说32位的CPU只能寻址2^32(4GB)了,大错特错。
32位系统只支持4GB内存?理论上32位操作系统的逻辑地址寻址范围只有2^32=4GB,但实际上并不是这样的,虽然常见的Windows 7 32位(真有人在用Windows 10 32位吗?)系统确实只能识别4GB内存,而且最大可用内存最多为3.25GB,但同为32位的Windows Server 2003/2008却可用利用4GB以上的内存,由于这些系统支持PAE物理地址扩展技能。
PAE除了CPU自身支持之外,还须要芯片组、主板还有操作系统的支持才行,比如一些旧主板就不支持大于4GB物理内存,而微软也没有把PAE功能开放到32位的家用操作系统中,纵然是Windows Server系统,如果不是企业版的也没有开放PAE功能。
当然了Windows XP/7/8/10系统的内核本身是支持PAE功能的,32位版的系统可通过破解开启此功能以支持4GB以上内存,破解方法实在也不难,网上有许多现成的工具,但说真的,与其去破解,还不如直接装64位的操作系统一了百了。
如果你还在用32位处理器,以上这些都不是你须要考虑的问题。





