【发布时间】:2017-02-03 09:18:13
【问题描述】:
这是我在进行任何研究之前的第一个逻辑:
因为它是 32 位机器,所以会有 2 ^ 32 个空格(大约 40 亿) 但它们是以位为单位的,所以我必须将其转换为字节。 (~40 亿 / 8) 然后我得到约 5 亿字节,或约 500MB。
我其实很好奇为什么不是 500 MB,所以我发现了这个:
"根据定义,32 位处理器使用 32 位来指代 每个内存字节的位置。 2^32 = 42 亿,这意味着 32位长的内存地址只能指42亿 独特的位置(即 4 GB)。”(original source)
但是我又感到困惑了,因为每个内存地址都是32位长,并且有42亿个。每个内存地址是 4 个字节,而不是 1 个字节。所以它将是 4.2 Giga * 4 字节 = 16.8 GB。
显然我在逻辑中遗漏了一些东西。有什么解释吗?
【问题讨论】:
标签: memory memory-management 32-bit