我们的CPU从原来的8位,16位,到现在的32位和64位。
cpu处理计算的时候“数据”和“指令”是不同对待的。
8位的CPU,一次只能处理一个8位的“数据”或者一个8位的"指令"。比如'00001101'.
又比如:“+1”这个运算,你要先指示CPU做“+”,完成后再输入“1”数据给CPU。
8位的CPU优点是设计简单,处理速度比较快。
缺点就是:软件设计复杂,繁琐。不利于计算机的发展。
后来推出了16位的CPU,我们就可以一次处理两个字节(16位)的数据了,比如“加1”这个命令。“加”是一个指令,占用8个位,余下的8位我们可以存放数据“1”了。
32位的CPU就更加方便了,我们就可以一次处理一个a=a+b这样的命令了。
优点:简化了软件设计的复杂度
缺点:硬件设计更加复杂,计算速度下降。
一般来讲32位的CPU对于我们来讲是最理性的CPU,对于软件开发来讲足够了。
但是2的32次方 = 4294967296bit = 4G左右
很显然32位CPU只有4G左右的内存寻址空间,对于一些服务器来讲4G的内存的远远不够的了。我们需要更加大的内存寻址空间的话就需要对CPU进升级。64位CPU就这样诞生了。64位CPU的内存寻址空间是多少你算算看!呵呵。
2的64次方(理论上)。
但是现在的AMD和Inter的64位CPU并不是真正意义上的64CPU,只是进行了部分64位的改进,比如64位的内存寻址等。
要是真的全部都是64位的了,那么现在市场上的软件将全部被淘汰不能使用了~呵呵,想像一下会是什么样子。
64位处理器处理的64位指令,不是指这个指令具有64位长,其实是指其操作数最大可达64位。操作数最高可达64位,因此存放操作数的通用寄存器(GPR)也必须是64位的,64位处理器也就有64位的GPR。同样的道理,目前作为主流的32位处理器(如Pentium 4,K7)的GPR就是32位的了。GPR是CPU寻址和地址数据存放的地方。64位处理器的GPR提升到了64位,增加程序员可见寄存器数量(这部分增加的寄存器称之为“寄存器扩展”),因而可供编程者使用的寄存器空间就更大,处理器的寻址能力和地址数据处理能力就会成倍的提高,性能自然机会更强。换句话来说,当64位处理器与32位处理器在处理同一条指令的时候,64位处理器访问内存、完成工作时消耗的等待时间就会更短,能处理的数据会比32位处理器能处理的数据多一倍以上,同时,64位处理器能管理的内存容量也会比32位处理器的高出一倍、甚至是两倍(PowerPC G5能管理8GB容量的内存)。但需要说明的是,这部分寄存器扩展是需要64位操作系统、64位驱动程序以及64位应用程序的配合才能充分发挥其突出的优势,而目前只有Windows XP 64-Bit Edition、Linux和Mac OS X Panther三个64位操作系统
目前64位处理器已经摆在了大家面前,再也不是一个概念,虽然它的普及还需要时间,但我们还是有必要对64位处理器作一个了解,理解它与32位处理器有什么不同之处?从而更加清楚64位处理器会带给我们什么!
对CPU有些了解的人大概都知道Pentium 3和Pentium 4,了解更深的,还会知道是i386处理器在19年前把处理器从16位带入32位时代。处理器经过了20多年考验后,在去年从32位跃升到64位,这可不同1GHz到3GHz的频率提升。如果说频率的提升是把一条4车道高速公路的时速限制从120公里提升到了360公里的话,那么从32位到64位的提升就是将这条提升了3倍时速限制的高速公路从4车道拓宽到了8车道,也就是说,这条公路的运力提升了一倍,这可是质的飞跃。
一、改朝换代——32位过度64位之因
其实,处理器从32位跃升至64位,除了制造工艺、处理器技术的不断进步外,也是与业内的两个巨头——Intel与AMD之间的竞争白热化分不开的。关心AMD的人应该知道,AMD的K7处理器Barton、Athlon XP受制于EV6前端总线带宽和核心工作频率提升能力不足等问题的困扰,无论是在性能、还是市场上的表现都不及Intel的P4处理器。AMD要想在性能上同Intel继续竞争,就必须突破目前前端总线带宽和核心工作频率给其带来的限制,而制造工艺的成熟和技术的发展,使得依靠新的处理器架构作为突破口成为了AMD的选择。而在AMD公司推出Athlon 64系列处理器后,Intel也匆匆推出P4 3.2GHz Extreme Edition与之对抗,在此几个月后,著名的苹果电脑推出了它的64位处理器PowerPC G5(PowerPC 970)。
二、理解64位,就理解了64位处理器
要理解64位处理器,就要明白64bit的意义。首先,我们来看看一个很重要的概念:操作数和指令。“操作数”指的就是等待CPU处理的数据,同时也指这些等待处理的数据所在的内存地址。而指令,就是指CPU通常所处理的指令。我们要说的64位处理器处理的64位指令,不是指这个指令具有64位长,其实是指其操作数最大可达64位。有因必有果,佛家的玄机也能用在理解这个高科技的处理器上。操作数最高可达64位,因此存放操作数的通用寄存器(GPR)也必须是64位的,64位处理器也就有64位的GPR。同样的道理,目前作为主流的32位处理器(如Pentium 4,K7)的GPR就是32位的了。
图1,AMD Athlon 64的测试信息显示支持X86-64
GPR是CPU寻址和地址数据存放的地方。64位处理器的GPR提升到了64位,增加程序员可见寄存器数量(这部分增加的寄存器称之为“寄存器扩展”),因而可供编程者使用的寄存器空间就更大,处理器的寻址能力和地址数据处理能力就会成倍的提高,性能自然机会更强。换句话来说,当64位处理器与32位处理器在处理同一条指令的时候,64位处理器访问内存、完成工作时消耗的等待时间就会更短,能处理的数据会比32位处理器能处理的数据多一倍以上,同时,64位处理器能管理的内存容量也会比32位处理器的高出一倍、甚至是两倍(PowerPC G5能管理8GB容量的内存)。但需要说明的是,这部分寄存器扩展是需要64位操作系统、64位驱动程序以及64位应用程序的配合才能充分发挥其突出的优势,而目前只有Windows XP 64-Bit Edition、Linux和Mac OS X Panther三个64位操作系统,nVIDIA和一些应用程序公司也只是象征式的推出了几个64位的驱动程序和软件,平台支持显得很是可怜。
图2,X86-64的寄存器扩展
三、我们的观点
说到这里,大家肯定意识到,象64位处理器这样的处理能力,目前对于桌面用户来说是没有直接意义上的好处的,毕竟如此高的处理能力和内存容量管理能力没有那个桌面用户能用得上。这也是为什么64位处理器即使推出了,但还不能取代32位处理器主流地位的原因之一。不过,虽然桌面用户用不上64位处理器,但从中却看到了它给我们带来的,是一个处理器架构体系的改变,更多的技术与革新将会在它的牵动下出现。如AMD Athlon 64处理器内置内存控制器就很好的解决了CPU与内存交换数据时的延迟,以及I/O设备与内存共享前端总线所带来的“瓶颈”问题。这些都将给电脑日后的发展提供了新的架构基础,随着电脑的应用不断发展,32位处理器势必不能满足人们对所需,在不久的将来64位处理器也会在技术的发展与厂商的推动下开始普及。
cpu处理计算的时候“数据”和“指令”是不同对待的。
8位的CPU,一次只能处理一个8位的“数据”或者一个8位的"指令"。比如'00001101'.
又比如:“+1”这个运算,你要先指示CPU做“+”,完成后再输入“1”数据给CPU。
8位的CPU优点是设计简单,处理速度比较快。
缺点就是:软件设计复杂,繁琐。不利于计算机的发展。
后来推出了16位的CPU,我们就可以一次处理两个字节(16位)的数据了,比如“加1”这个命令。“加”是一个指令,占用8个位,余下的8位我们可以存放数据“1”了。
32位的CPU就更加方便了,我们就可以一次处理一个a=a+b这样的命令了。
优点:简化了软件设计的复杂度
缺点:硬件设计更加复杂,计算速度下降。
一般来讲32位的CPU对于我们来讲是最理性的CPU,对于软件开发来讲足够了。
但是2的32次方 = 4294967296bit = 4G左右
很显然32位CPU只有4G左右的内存寻址空间,对于一些服务器来讲4G的内存的远远不够的了。我们需要更加大的内存寻址空间的话就需要对CPU进升级。64位CPU就这样诞生了。64位CPU的内存寻址空间是多少你算算看!呵呵。
2的64次方(理论上)。
但是现在的AMD和Inter的64位CPU并不是真正意义上的64CPU,只是进行了部分64位的改进,比如64位的内存寻址等。
要是真的全部都是64位的了,那么现在市场上的软件将全部被淘汰不能使用了~呵呵,想像一下会是什么样子。
64位处理器处理的64位指令,不是指这个指令具有64位长,其实是指其操作数最大可达64位。操作数最高可达64位,因此存放操作数的通用寄存器(GPR)也必须是64位的,64位处理器也就有64位的GPR。同样的道理,目前作为主流的32位处理器(如Pentium 4,K7)的GPR就是32位的了。GPR是CPU寻址和地址数据存放的地方。64位处理器的GPR提升到了64位,增加程序员可见寄存器数量(这部分增加的寄存器称之为“寄存器扩展”),因而可供编程者使用的寄存器空间就更大,处理器的寻址能力和地址数据处理能力就会成倍的提高,性能自然机会更强。换句话来说,当64位处理器与32位处理器在处理同一条指令的时候,64位处理器访问内存、完成工作时消耗的等待时间就会更短,能处理的数据会比32位处理器能处理的数据多一倍以上,同时,64位处理器能管理的内存容量也会比32位处理器的高出一倍、甚至是两倍(PowerPC G5能管理8GB容量的内存)。但需要说明的是,这部分寄存器扩展是需要64位操作系统、64位驱动程序以及64位应用程序的配合才能充分发挥其突出的优势,而目前只有Windows XP 64-Bit Edition、Linux和Mac OS X Panther三个64位操作系统
目前64位处理器已经摆在了大家面前,再也不是一个概念,虽然它的普及还需要时间,但我们还是有必要对64位处理器作一个了解,理解它与32位处理器有什么不同之处?从而更加清楚64位处理器会带给我们什么!
对CPU有些了解的人大概都知道Pentium 3和Pentium 4,了解更深的,还会知道是i386处理器在19年前把处理器从16位带入32位时代。处理器经过了20多年考验后,在去年从32位跃升到64位,这可不同1GHz到3GHz的频率提升。如果说频率的提升是把一条4车道高速公路的时速限制从120公里提升到了360公里的话,那么从32位到64位的提升就是将这条提升了3倍时速限制的高速公路从4车道拓宽到了8车道,也就是说,这条公路的运力提升了一倍,这可是质的飞跃。
一、改朝换代——32位过度64位之因
其实,处理器从32位跃升至64位,除了制造工艺、处理器技术的不断进步外,也是与业内的两个巨头——Intel与AMD之间的竞争白热化分不开的。关心AMD的人应该知道,AMD的K7处理器Barton、Athlon XP受制于EV6前端总线带宽和核心工作频率提升能力不足等问题的困扰,无论是在性能、还是市场上的表现都不及Intel的P4处理器。AMD要想在性能上同Intel继续竞争,就必须突破目前前端总线带宽和核心工作频率给其带来的限制,而制造工艺的成熟和技术的发展,使得依靠新的处理器架构作为突破口成为了AMD的选择。而在AMD公司推出Athlon 64系列处理器后,Intel也匆匆推出P4 3.2GHz Extreme Edition与之对抗,在此几个月后,著名的苹果电脑推出了它的64位处理器PowerPC G5(PowerPC 970)。
二、理解64位,就理解了64位处理器
要理解64位处理器,就要明白64bit的意义。首先,我们来看看一个很重要的概念:操作数和指令。“操作数”指的就是等待CPU处理的数据,同时也指这些等待处理的数据所在的内存地址。而指令,就是指CPU通常所处理的指令。我们要说的64位处理器处理的64位指令,不是指这个指令具有64位长,其实是指其操作数最大可达64位。有因必有果,佛家的玄机也能用在理解这个高科技的处理器上。操作数最高可达64位,因此存放操作数的通用寄存器(GPR)也必须是64位的,64位处理器也就有64位的GPR。同样的道理,目前作为主流的32位处理器(如Pentium 4,K7)的GPR就是32位的了。
图1,AMD Athlon 64的测试信息显示支持X86-64
GPR是CPU寻址和地址数据存放的地方。64位处理器的GPR提升到了64位,增加程序员可见寄存器数量(这部分增加的寄存器称之为“寄存器扩展”),因而可供编程者使用的寄存器空间就更大,处理器的寻址能力和地址数据处理能力就会成倍的提高,性能自然机会更强。换句话来说,当64位处理器与32位处理器在处理同一条指令的时候,64位处理器访问内存、完成工作时消耗的等待时间就会更短,能处理的数据会比32位处理器能处理的数据多一倍以上,同时,64位处理器能管理的内存容量也会比32位处理器的高出一倍、甚至是两倍(PowerPC G5能管理8GB容量的内存)。但需要说明的是,这部分寄存器扩展是需要64位操作系统、64位驱动程序以及64位应用程序的配合才能充分发挥其突出的优势,而目前只有Windows XP 64-Bit Edition、Linux和Mac OS X Panther三个64位操作系统,nVIDIA和一些应用程序公司也只是象征式的推出了几个64位的驱动程序和软件,平台支持显得很是可怜。
图2,X86-64的寄存器扩展
三、我们的观点
说到这里,大家肯定意识到,象64位处理器这样的处理能力,目前对于桌面用户来说是没有直接意义上的好处的,毕竟如此高的处理能力和内存容量管理能力没有那个桌面用户能用得上。这也是为什么64位处理器即使推出了,但还不能取代32位处理器主流地位的原因之一。不过,虽然桌面用户用不上64位处理器,但从中却看到了它给我们带来的,是一个处理器架构体系的改变,更多的技术与革新将会在它的牵动下出现。如AMD Athlon 64处理器内置内存控制器就很好的解决了CPU与内存交换数据时的延迟,以及I/O设备与内存共享前端总线所带来的“瓶颈”问题。这些都将给电脑日后的发展提供了新的架构基础,随着电脑的应用不断发展,32位处理器势必不能满足人们对所需,在不久的将来64位处理器也会在技术的发展与厂商的推动下开始普及。