操作系统的位数是指操作系统拥有了N位CPU所期待的相应特性,比如更大的甚至是统一的寻址空间。也许操作系统中的某些旧的代码也将由N位的新指令替代以获取更好的性能。如果你有一颗32位的CPU,一般来说他是无法运行64位的操作系统的,因为他很可能会把一条合法完整的指令拆成两个非法指令。反之,如果你在一颗64位cpu上运行32位的系统,一般来说是可以的,因为CPU的设计者大多会吸纳之前版本的指令集,一颗64位的cpu一般而言是能识别32位的旧指令的。指令缓冲器的存在可以让cpu提前决定程序计数器的步进量,从而保证旧指令的顺利执行。所以说,操作系统的位和硬件位的关系就是操作系统开发商感觉有必要给拥有更高位的CPU的使用者“一个交代”。
第一,设计初衷不同。64位操作系统的设计初衷是:满足机械设计和分析、三维动画、视频编辑和创作,以及科学计算和高性能计算应用程序等领域中需要大量内存和浮点性能的客户需求。换句简明的话说就是:它们是高科技人员使用本行业特殊软件的运行平台。而32位操作系统是为普通用户设计的。
第二,要求配置不同。64位操作系统只能安装在64位电脑上(CPU必须是64位的)。同时需要安装64位常用软件以发挥64位(x64)的最佳性能。32位操作系统则可以安装在32位(32位CPU)或64位(64位CPU)电脑上。当然,32位操作系统安装在64位电脑上,其硬件恰似“大马拉小车”:64位效能就会大打折扣。
第三,运算速度不同。64位CPU GPRs(General-Purpose Registers,通用寄存器)的数据宽度为64位,64位指令集可以运行64位数据指令,也就是说处理器一次可提取64位数据(只要两个指令,一次提取8个字节的数据),比32位(需要四个指令,一次提取4个字节的数据)提高了一倍,理论上性能会相应提升1倍。
第四,寻址能力不同。64位处理器的优势还体现在系统对内存的控制上。由于地址使用的是特殊的整数,因此一个ALU(算术逻辑运算器)和寄存器可以处理更大的整数,也就是更大的地址。比如,Windows Vista x64 Edition支持多达128 GB的内存和多达16 TB的虚拟内存,而32位CPU和操作系统最大只可支持4G内存。
第五,软件普及不同。目前,64位常用软件比32位常用软件,要少得多的多。道理很简单:使用64位操作系统的用户相对较少。因此,软件开发商必须考虑“投入产出比”,将有限资金投入到更多使用群体的软件之中。这也是为什么64位软件价格相对昂贵的重要原因(将成本摊入较少的发售之中)
操作系统的位数是指系统对数据处理的最大字长,,,,一般操作系统的位数应该小于或者最大等于硬件的位数,以及的位数也决定了操作系统的最大位数。就好比,你一个人,硬件就是你能承受的最大压力为100KG,操作系统为64KG时就是说只要压力在64KG之内的系统和你都可以处理,超过64KG的系统就会反映迟钝,超过100KG的 估计就会系统崩溃,长时间超负荷还会烧坏硬件。【个人理解,仅供参考】
在回答不少网友提出的这个问题之前,首先向大家阐明微软开发64位操作系统的初衷:满足复杂的机械分析设计、三维动画视频编辑创作和“大型”数据高性能计算等领域需要4G以上内存和浮点性能的客户特殊需求。那么,就普通用户来说,面对32位/64位操作系统和32位/64位常用软件,如何根据电脑硬件配置进行取舍呢?下面,我向大家提供六个方面的“参照系数”——
其一,安装64位操作系统,必须建立在64位CPU基础之上;安装64位常用软件,必须建立在64位操作系统基础之上。换句话说就是:理想的“64位”,是CPU、系统、软件的“三位一体”。
其二,64位CPU能够向下兼容32位操作系统。但是按照“向下兼容”安装运行32位操作系统,就会使64位CPU“运算处理快”的优势大打折扣甚至无从发挥(从试验数据得出)。
其三,64位操作系统向下兼容绝大部分32位常用软件。但是运行32位常用软件时,64位CPU“运算处理快”的优势同样会大打折扣甚至无从发挥(从试验数据得出)。
其四,目前,64位常用软件较少。64位操作系统虽有向下兼容功能,但在安装运行有些32位常用软件时,仍会出现“不大兼容”或“不兼容”的情况(不能满足需求)。
其五,归根结底,最终运行的32位或64位常用软件,直接体现了64位CPU的性能发挥程度。溯本求源,64位常用软件的跟进,完全取决于64位操作系统“用户群”的多寡。
其六,64位CPU并不要求“必须配置4G以上内存”。但在4G以下内存运行“特大型”软件、处理“大型”数据高性能计算时,不会享受到64位CPU带来的“超常运算速度”,甚至适得其反。
64位整数、内存地址或其他数据单元,是指它们最高达到64位(8字节)宽,64位CPU和算术逻辑单元架构是以寄存器、内存总线或者数据总线的大小为基准,处理效率较32位来说性能更加强悍。