手机32位和64位的区别
自从苹果在iPhone 5s上使用了64位的A7处理器后,手机处理器的位数也就自然而然的成为了人们关注的焦点,那到底64位处理器和32位处理器有什么区别呢?本文将重点介绍一番。
CPU的位是指一次性可处理的数据量是多少,1字节=8位,32位处理器可以一次性处理4个字节的数据量。依次类推,64位处理器可以一次性处理8个字节的数据量,比32位处理器的处理速率加快一倍。
为什么64位会比32位的快,那是因为如果一个机器指令是32位的,那么寄存器是64位就可以一次取两个指令,也就相当于一个小孩和一个大人抢东西吃,小孩一次只能拿四个,而大人则可以拿8个。
换一种说法,32位跟64位就好比四车道和八车道的区别,只有你堵成晚高峰的北京才能感受得到。你要是四车道都没开满,上了八车道也感觉不到区别。一般来说跑计算密集型并且为64位优化过的程序才能感受到区别。
如果说频率的提升是把一条4车道高速公路的时速限制从120公里提升到了360公里的话,那么从32位到64位的提升就是将这条提升了3倍时速限制的高速公路从4车道拓宽到了8车道,也就是说,这条公路的运力提升了一倍,这可是质的飞跃。
不过计算机内部表示的数值是有范围的,决定性因素在于CPU的寄存器。它是计算机处理数值的最小单元,如果寄存器是32位的,那么他所能表示的数的范围最大是2的32次方,即表示的范围是32个0到32个1,(这里不计较原码还是补码或是移码),如果寄存器是64位的话,显而易见,表示的范围是64个0到64个。
数的表示范围大了,那么其计算的精确度就提高了。当然这要操作系统的支持才行,就像有辆跑车能跑300公里每小时,但是驾驶员只会开低档,好的资源被浪费了。
另外,相信大家都知道32位系统只能识别4g内存而64位系统可以识别4g以上内存。那是因为内存是由很多小的单元组成,为了能取得内存里面的数据,需要给把每个单元编号,就像家庭住址一样。而作为内存的单元编号是有专门的寄存器存储(专业名词是mar)的,32位系统可以表示的最大地址是2的32次方,一般来说一个单元是8位的,也就是一个字节。合起来就是4g的存储空间,同样的64位系统可以表示的单元地址的总数是2的64方。
64位操作系统跟32位操作系统又有什么区别?
操作系统其实也是程序,64位的操作系统使用的是64位的指令,不能安装在32位机器上。两者最大的区别在于:
1、设计初衷不同
64位操作系统的设计初衷是为了满足需要大量内存和复杂浮点数运算的需求,一般用在科学计算、人工智能、平面设计、视频处理、3D动画和游戏数据库以及各种网络服务器等领域中。
2、安装环境不同
64位操作系统只能安装在64位CPU的机器上,同时需要配合64位的程序才能发挥最佳性能,32位操作系统既可以安装在32位CPU的机器上,也可以安装在64位CPU的机器上,但没啥意义,64位的性能会被大打折扣。
3、寻址能力不同
32位操作系统最多可以寻址2的32次方即4,294,967,296字节,约4GB内存,4GB的内存就现在而言在很多服务端程序上都是不够用的,而64位操作系统理论上可以寻址2的64次方即18,446,744,073,709,551,616字节超过1亿GB内存,但这只是理论上,由于不同架构的CPU设计不同,所以寻址能力也有错差别。
32位操作系统和64位操作系统下数据类型对应的字节大小也是不同的,正常数据类型对应的字节数应该是CPU位数决定的,但实际上貌似是由编译器决定的,看下表:
小结
32位处理器的优点唯一值得一提就是它可以与20世纪末和21世纪初开发的所有旧程序兼容。64位处理器可以提升程序的性能,更好的利用64位操作系统的特性。64位的处理器有256TB的虚拟内存,其中128TB分配给了用户空间,另外128TB分配给了内核空间(不同架构的CPU虚拟内存的设计大小不同,AMD的x86-64架构的CPU只有最低48位才会在地址转换时被使用,所以总的虚拟地址空间为2的48次方即256TB,这里涉及到多级页表中的四级页表,后续程序喵会介绍)。
要实现真正意义上的64位计算,光有64位的处理器是不行的,还必须得有64位的操作系统以及64位的应用软件才行,三者缺一不可,缺少其中任何一种要素都是无法实现64位计算的。在64位处理器方面,Intel和AMD两大处理器厂商都发布了多个系列多种规格的64位处理器。
手机处理器32位和64位有什么区别?
32位处理器可以一次性处理4个字节的数据量。依次类推,64位处理器可以一次性处理8个字节的数据量,比32位处理器的处理速率加快一倍。
1、手机处理器和PC处理器对于位数的概念是相同的,这里我就用PC的处理器来说明了。对CPU有些了解的人大概都知道Pentium 3和Pentium 4,了解更深的,还会知道是i386处理器在20几年前把处理器从16位带入32位时代。
2、处理器经过了近30多年的考验后,到现在已经跃升到64位,这可不同1GHz到3GHz的频率提升,微处理器通过运行存储器内的软件及调用存储器内的数据库,达到控制目的。
3、单纯增加CPU的核心数,并不意味着能带来性能的显著提升。如果要最大化地利用多核CPU提供的计算资源,需要同时对操作系统和现有的应用做调整。而且,多核CPU对应用性能的提升取决于同时运行多个程序或线程的能力高低。
手机32位和64位的区别 在哪方面有差异?
1、设计初衷不同。64位操作系统的设计初衷是:满足机械设计和分析、三维动画、视频编辑和创作,以及科学计算和高性能计算应用程序等领域中需要大量内存和浮点性能的客户需求。换句简明的话说就是:它们是 高科 技人员使用本行业特殊软件的运行平台。而32位操作系统是为普通用户设计的。
2、要求配置不同。64位操作系统只能安装在64位电脑上(CPU必须是64位的)。同时需要安装64位常用软件以发挥64位(x64)的最佳性能。32位操作系统则可以安装在32位(32位CPU)或64位(64位CPU)电脑上。当然,32位操作系统安装在64位电脑上,其硬件恰似“大马拉小车”:64位效能就会大打折扣。
3、运算速度不同。64位CPU GPRs(General-Purpose Registers,通用寄存器)的数据宽度为64位,64位指令集可以运行64位数据指令,也就是说处理器一次可提取64位数据(只要两个指令,一次提取8个字节的数据),比32位(需要四个指令,一次提取4个字节的数据)提高了一倍,理论上性能会相应提升1倍。计算机
4、寻址能力不同。64位处理器的优势还体现在系统对内存的控制上。由于地址使用的是特殊的整数,因此一个ALU(算术逻辑运算器)和寄存器可以处理更大的整数,也就是更大的地址。比如,Windows Vista x64 Edition支持多达128 GB的内存和多达16 TB的虚拟内存,而32位CPU和操作系统最大只可支持4G内存。
5、软件普及不同。目前,64位常用软件比32位常用软件,要少得多的多。道理很简单:使用64位操作系统的用户相对较少。因此,软件开发商必须考虑“投入产出比”,将有限资金投入到更多使用群体的软件之中。这也是为什么64位软件价格相对昂贵的重要原因。
