什么是64位处理器 cpu参数是多少位的处理器

现在电脑里的x86处理器和手机里的ARM处理器都是64位的 。通常对于价格昂贵的产品,是支持x86-64指令集的x86处理器,或者是支持ARM64指令集的ARM处理器 。其实早在20世纪60年代,64位CPU就已经用在了超级计算机上,到了90年代,64位处理器也用在了工作站和服务器上 。2003年AMD推出Velociraptor 64后,个人电脑逐渐普及,2011年公布了用于洪都博客智能手机的64位处理器架构ARMv8 。

这里的64位是指CPU的位宽 。简单来说,CPU的位宽是指CPU在一个时钟周期内能够处理的二进制位数 。比如8086 CPU是16位,一次可以处理2个字节(16位),80386 CPU是32位,一次可以处理4个字节 。目前CPU基本是64位,一次可以处理8个字节 。我们的Windows操作系统也分32位和64位 。优化上述CPU的位宽很重要 。比如32位CPU不能使用64位Windows(因为CPU一次只能处理32位,操作系统给出的指令是处理64位),但是64位CPU既可以运行32位Windows,也可以运行64位Windows 。
64位CPU的优势在于可以进行更大规模的整数运算,高吞吐量的程序运行速度会更快 。但是,人们往往对CPU的位宽有一些误解 。比如有人说红豆博客CPU只升级到64位支持更大内存,也有人认为32位系统只支持4GB内存 。这是真的吗?
更大内存容量和CPU的位宽有关系吗?CPU的寻址能力与其地址总线位宽有关,而我们通常所说的CPU位宽是指数据总线位宽 。与地址总线位宽无关,自然也与寻址能力无关 。

总线位宽等于CPU的整数内存的位宽,CPU中的内存通常可以分为三种:整数内存、浮点内存和其他 。在这三种类型的内存中,只有整数内存可以存储指针值,也就是内存数据的地址,非整数内存不能存储指针值 。因此,读写内存无法避免整数内存的位宽限制 。以64位CPU为例,这些CPU的内部整数内存位宽为64位,支持64%的整数 。
但并不意味着64位CPU的所有总线和存储器都是64位的,不同类型的存储器可以有不同的位宽 。64位CPU的整数内存是64位,浮点内存不一样 。比如运行MMX处理器推出的MMX指令集,首创x86处理器支持SIMD运算,定义了8个64位浮点存储器,而运行MMX本身只是一个32位处理器 。1999年推出,运行3处理器,同样只有32位,增加了SSE指令集,搭配8个128位内存 。后来的AVX2和FMA指令集可以支持256位运算,浮点内存也扩展到了256位 。目前CPU中更大的内存是AVX-512指令集使用的512位内存 。

CPU中有许多不同的存储器 。
CPU的地址总线位宽是什么鬼?

英特尔的描述是物理地址扩展(PAE)是一种允许32位处理器访问大于4gb的物理地址空间的功能 。上图是英特尔至强处理器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的物理地址扩展技能 。

除了CPU本身的支持,PAE还需要芯片组、主板、操作系统的支持 。比如有些老主板不支持4GB以上的物理内存,微软也不开放PAE到32位家用操作系统 。即使是Windows Server系统,如果不是企业版也不会打开PAE 。
当然,Windows XP/7/8/10系统的内核本身就支持PAE功能 。32位版本的系统可以通过破解支持4GB以上的内存来打开这个功能 。破解 其实不难 。网上有很多现成的工具,但是真的,与其破解,不如直接安装64位操作系统 。
【什么是64位处理器 cpu参数是多少位的处理器】