【发布时间】:2018-02-01 16:58:49
【问题描述】:
在尝试估计存储所有 32 位整数需要多少内存时,我很难理解 4 GB 数字的来源。
一个 32 位整数数据类型有 32 位,每个位可以设置为 1 或 0。那是 2^32 种可能的表示。并且每个表示需要 32 位,总共需要 32 * 2^32 位,即 2^5 * 2^32 = 2^37 位。
而 2^37 位大约是 17 GB,而不是 4 GB。
我哪里错了?
【问题讨论】:
-
你有 4GB 数据的来源吗?你的工作一目了然。
-
关于“在尝试估算时 4 GB 数字的来源” 您如何估算?您存储了多少个单独的 32 位整数?
2^5是从哪里来的2^5 * 2^32 = 2^37?
标签: memory integer byte bit 32-bit