简单来说,现在争论的人主要围绕着windows的x86和x64版本
但其实这个争论根本和32bit和64bit没有直接关联,只有间接关联而已。
因为大部分都搞错了一个重要的基础,就是x64不代表64bit,代表64bit的东西叫做IA64。
说一大堆专业术语恐怕大部分人都懒得看,也看不懂,就简单说概念性的东西。
真正意义上纯64bit的东西只有intel的IA64,它完全不兼容x86运算,需要用到x86-to-IA-64的解码器才能进行x86运算,但是性能损失很厉害。
x64这个东西准确来说应该是x86拓展x64技术,amd和intel的东西根本都是一个性质。
这个技术是用来解决64bit系统处理x86代码需要损失性能的关键,因为它是直接使用x86的cpu拓展到64bit,使x86的cpu即可以处理x86运算,也可以处理64bit运算
和IA64的解码器可以说是完全反过来的东西,IA64的解码器是让64bit的cpu处理被转换成64bit的32bit代码,而x64则是x86的cpu直接处理32bit和64bit的运算。
而争论的关键就在于32bit和64bit的软件,实际上现在我们使用的所谓64bit cpu都是x64的cpu,64bit的cpu只有Intel的安腾系列而已,也只有他们可以安装安腾服务器版原生纯64bit的windows。
而x64的本质就是用来同时处理32bit和64bit,所以在x64上面根本无谓软件的32bit和64bit之分,因为两者都可以非常顺利的运用在x64的构架上面,只是64bit的软件效率比32bit的软件要高得多,但是不代表32bit的软件在x64上面会出现问题,当然这里不包括那些使用16位安装代码的程序,x64抛弃了16位,这你去问微软。
换句话说,想要x64只运行64bit的时代是不会到来,因为x64就是为了同时运行x86和64bit而出现的东西,那个时代只会属于安腾cpu,而不是我们现在手里的拥有x64技术的x86 cpu。
32bit的代码在x64中永远也不回消失,因为那就是x64出现的目的。