64位/ 32位的低级优缺点是什么?

Gor*_*son 10 64-bit 32-bit 32bit-64bit

我敢肯定我们都听过64bit和32bit的条款,但它们究竟是什么意思?

我很确定它们与内存地址的大小有关.在64位机器上,对象的引用是64位.但我想深入挖掘一下......

  1. 人们经常听到"64位机器"这个短语.计算机的哪一部分实际上是针对位数?处理器?操作系统?

  2. 拥有更大的内存地址有什么好处?

我可以添加更多问题,但我认为简短更好.

谢谢你们:D

b w*_*b w 17

64位是指寄存器的宽度,存储器寻址空间等.一个好处是能够处理超过4GB的内存.

维基百科有一篇关于64位计算的文章,详细介绍.

编辑:更多内存的优势在于操作系统和程序具有更多的虚拟寻址空间--16艾字节(172亿GB) - 更重要的是,可以将更多物理内存添加到系统并进行处理,从而减少虚拟内存与磁盘的交换.

更宽的寄存器和数据总线的优点是可以更轻松,更快速地移动相同数量的数据.现在可以使用一个操作来完成需要两个或更多寄存器的操作.

因此,当软件重新编译为64位时,性能通常会提高.

缺点是,更宽的数据可以是指由相同的数据采取更多的空间.例如,存储数字300需要九位.如果它以32位整数存储,则浪费23位.在64位中,该浪费变为55位.因此,在不进行重组的情况下,对64位进行简单的重新编译可以产生更快但更臃肿的软件.

编辑:此处还有64位技术页面:


Gun*_*iez 6

差别恰好是32位;-)

您需要64位硬件(处理器)才能运行64位操作系统.您需要一个64位操作系统来运行64位软件.这是依赖关系.

  • 在32位系统中,您仅限于寻址4 GiByte(2 ^ 32)内存,在64位中,理论上限制为2 ^ 64字节.
  • 64位软件需要稍多的内存,主要用于指针是8字节而不是4字节
  • 在x86_64上,64位可执行文件需要更多内存,因为有许多指令的附加操作码,因此可能运行速度较慢
  • 在x86_64上,64位软件可以使用更多寄存器,并且有可能更快地运行