鉴于今天(出于性能原因?)变量通常与处理器的“位宽”对齐(我想在这里使用“字宽”,但在 x86 上“字”仍然是 16 位,对吗?),从 32 位操作系统切换到 64 位版本会使 RAM 使用量翻倍吗?
那么这是否意味着,要使用 64 位操作系统完成 32 位操作系统使用 4 GB RAM(嗯,实际上是 3.x GB...)可以完成的相同工作,我需要 8 GB RAM 进行编程?
请注意,我在这里只谈论日常的 x86 计算机。
答案1
一般情况下会有所增加,但很少接近两倍。以下是一些信息:
http://www.codeguru.com/cpp/cpp/cpp_mfc/tutorials/article.php/c15711/
答案2
完全不是,虽然 64 位操作系统的开销很小,但真正的区别在于它们能够使用的内存量,而不是它们需要的内存量。因此,主要区别在于它们使用 64 位来存储内存地址。
答案3
呃……
我注意到,通常当您在 x86 系统上安装 x64 时,仅为 x64 编译的程序通常会占用更多内存,但这只是微不足道的。
话虽如此,但内存总是越大越好!
答案4
32 位系统使用 32 位指令,而 64 位系统使用 64 位指令。换句话说,程序的 CODE 部分将占用更多空间。不过,这只是总内存使用量的一小部分。其他所有内容(数据等)不会发生太大变化;无论在哪种架构上,1600 万色图像的数据量仍然相同。