一.简介
32位CPU:计算机中的位数指的是CPU一次能处理的最大位数。32位计算机的CPU一次最多能处理32位数据,例如它的EAX寄存器就是32位的,当然32位计算机通常也可以处理16位和8位数据。在Intel由16位的286升级到386的时候,为了和16位系统兼容,它先推出的是386SX,这种CPU内部预算为32位,外部数据传输为16位。直到386DX以后,所有的CPU在内部和外部都是32位的了。有些人往往会弄不清在计算机中出现的“位”和Byte,KB,MB等有何关系,而它们的关系是,8位等于一字节,即8bit=1B 。32位处理器每次处理 4Byte(32bit),同理,64位处理器每次处理 8Byte(64bit) 。32位cpu支持内存2的32次方 = 4294967296bit = 4G左右
64位CPU:这个位数指的是CPU GPRs(General-Purpose Registers,通用寄存器)的数据宽度为64位,64位指令集就是运行64位数据的指令,也就是说处理器一次可以运行64bit数据。要实现真正意义上的64位计算,光有64位的处理器是不行的,还必须得有64位的操作系统以及64位的应用软件才行,三者缺一不可,缺少其中任何一种要素都是无法实现64位计算的。2的64次方 = 16G左右
二.区别
64位的CPU,相比较32位的CPU来说,64位CPU最为明显的变化就是增加了8个64位的通用寄存器,内存寻址能力提高到64位,以及寄存器和指令指针升级到64位等。而且64位的CPU要比32位的CPU占更大的内存,原因是64位的CPU一次性可处理64个字节,也就是占用内存最小单位就是64字节,和32位处理器相比会有比较大的资源浪费。但是运算速率高。同时也支持更大的内存。
64位操作系统与32操作系统
32位操作系统:32位操作系统是针对32位CPU设计的,32位系统必须要至少32位以上的CPU可以兼容,但是64位处理器是可以向下兼容的
64位操作系统:64位操作系统针对的64位的CPU设计。64位系统能必须是64位CPU才能装上。
操作系统只是硬件和应用软件中间的一个平台。现在大多数的软件是32位系统下的,但是64位的系同样支持,只是运行的速率并没有明显的提高,如果想加快运行和处理速率,要在64位的操作系统及64位的CPU上用64的应用软件。
64位操作系统与32位操作系统的识别
Windosws系统下的判别:开始→运行→CMD回车→输入systeminfo
查看对应信息,信息辨别如下:
X86是32位
X64是64位
例如:此操作系统为32位,cpu为32位。
Linux系统下的判别:# getconf LONG_BIT→回车
32
(说明当前CPU运行在32bit模式下, 但不代表CPU不支持64bit)
# cat /proc/cpuinfo | grep flags | grep ' lm ' | wc -l → 回车
8
(结果大于0, 说明支持64bit计算. lm指long mode, 支持lm则是64bit)
---------------------
作者:duff620
来源:CSDN
原文:https://blog.csdn.net/duff620/article/details/6166036
版权声明:本文为博主原创文章,转载请附上博文链接!