64位系统究竟牛逼在哪里?

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 17:56   1125   0

想必大家都遇到过这样的问题:安装某个软件的时候,出现提示选择32位版本还是64位版本?我们也可以查看自己的电脑是32位还是64位系统。

Windows

Linux

大家可能知道32位和64位和系统有关,

但其实 32 vs 64 可以有多重含义。

一般情况下,有以下几种可能:
CPU、程序、操作系统。
今天我来给大家一一介绍下!

→_→CPU

首先,我们要先从什么是位数讲起。

计算机中的位数指的是CPU一次能处理的最大位数。在Intel由16位的286升级到386的时候,为了和16位系统兼容,它先推出的是386SX,这种CPU内部预算为32位,外部数据传输为16位。直到386DX以后,所有的CPU在内部和外部都是32位的了。

有些人往往会弄不清在计算机中出现的“位”和Byte,KB,MB等有何关系,8位等于一字节Byte,即8bit=1B。32位处理器每次最多处理4Byte(32bit),同理,64位处理器每次最多处理 8Byte(64bit) 。

32位架构的CPU数据总线宽度是32位,每次可以传输32位数据,可以计算4个字节。

64位架构的CPU数据总线宽度是64位,每次可以传输64位数据,可以计算8个字节。

数据总线

数据总线是CPU与内存或其它器件之间的数据传输的通道,数据总线的宽度决定了CPU和外界的数据传输速度,每根线可以传输1位二进制数据,32根线每次就可以传输32位数据,64根线每次就可以传输64位数据。除了数据总线外还有地址总线和控制总线。

地址总线

CPU通过地址总线来指定存储单元,地址总线的宽度决定了CPU所能访问的最大内存空间大小,1根地址线能访问的内存空间是1bit,32根线访问的最大内存空间是4G,64根线...太大了。

控制总线

CPU通过控制总线对外部器件进行控制,主要通过控制总线来传输控制信号和时序信号,控制总线是各种信号线的集合,是计算机各部件之间传送数据、地址和控制信息的公共通道,控制总线的宽度决定了CPU对外部器件的控制能力。

总体来说,CPU作为总线的主控,通过控制总线向各个外部器件发送控制信号,通过地址总线访问内存地址,通过数据总线传输数据。


CPU的位数越大,可以计算的数值就越大,64位CPU可以执行更大数字的运算,但这个优势在普通应用上不太明显,普通应用也没必要进行太大数字的运算,但是对于数值计算较多的应用就非常明显。同时64位CPU有更大的寻址空间。


运算速度不同:64位CPU的通用寄存器数据宽度是64位,处理器依次可以读取64位数据,比32位多一倍,运算速度理论上会提升一倍。像两个不同的打工人一样,打工人A一次性可以搬32块砖,打工人B一次性可以搬64块砖,谁搬砖的速度快,自然你更喜欢用谁。由于运算速度提升,64位CPU可以在多任务中运行顺畅,来回切换也不会卡顿,王者荣耀都顺畅多了。

那么有朋友要问了,既然位数越高处理器运算速度越快,为什么不用128位、256位的CPU?因为位数越高,处理器芯片的设计也就越复杂,当前的科技水平还无法制造这么复杂的CPU。

→_→程序


指的是32位程序和64位程序。

32位指令的程序一般来说可以在64位机器上运行,可以兼容。

64位指令的程序不可以在32位机器上运行,因为32位的寄存器存不下64位的指令。

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛