【发布时间】:2018-12-14 21:58:23
【问题描述】:
我正在阅读 32 位和 64 位系统之间的区别,并在此过程中发现了这个博客:https://www.zdnet.com/article/clearing-up-the-3264-bit-memory-limit-confusion/
现在我很困惑,因为在这个博客中他们提供了如下注释:
注意:想知道我们是如何达到 4GB 限制的吗?以下是 32 位系统的数学运算:
2^32 = 4,294,967,296 字节 4,294,967,296 / (1,024 x 1,024) = 4,096 MB = 4GB
64 位不同:
2^64 = 18,446,744,073,709,551,616 18,446,744,073,709,551,616 / (1,024 x 1,024) = 16EB(艾字节)
他们声明程序是 32 位还是 64 位会改变它可以使用的内存限制。
我不明白的是,位如何变成字节?如果你计算出 2 位的 32 次方,那么结果肯定是 4,294,967,296 bits 而不是 bytes?如果是这样,那么 32 位系统的内存限制将是 4 GigaBits 而不是 4 GigaBytes?
有人能解释一下这是怎么回事吗?也许我错过了什么?
【问题讨论】:
-
现在寻找副本;我想我今天早些时候看到了一个。是的,在我的浏览器历史记录中找到它:)
-
你能提供一个链接到副本吗?我确实在网站上搜索了几个问题,但找不到类似的东西。
-
它位于页面顶部,因为我将问题作为重复项关闭了。我发布的答案也是一个完整的答案,因此即使我打算关闭它,我还是决定不将其仅作为评论。
标签: x86 64-bit 32bit-64bit cpu-architecture 32-bit