我有一个关于 32 位内存地址的非常基本的问题。我的理解是 2^32 是 32 位系统上可能的内存地址的最大数量。我感到困惑的是我们如何从这个数字到所谓的 4GB 限制。在我的研究中,我看到有人这样做:
2^32 = 4,294,967,296 字节
4,294,967,296 / (1,024 * 1,024) = ~4 GB
首先,这个 (1,024 * 1,024) 是从哪里来的?
其次,如果我错了,请纠正我,但是 4,294,967,296 被标记为字节,因为字节是 RAM 中可以寻址的最小存储空间单位。由于我们限制为 2^32 个地址,这就是可以寻址的字节数。
第三,即使 RAM 中最小的可寻址空间是一个字节,但硬盘驱动器肯定不是这种情况,因为 32 位系统的硬盘空间通常超过 4 GB。有人可以简要描述一下硬盘的寻址方案吗?