我不明白这是因为2 ^ 32是4千兆位而不是字节对吗?既然2 ^ 2 * 1024 * 1024 * 1024位对吗?我错了吗?
答案 0 :(得分:8)
最小的可单独寻址的存储单元是一个字节。比特没有地址。你必须读取一个或多个字节,然后进行位掩码,以获得各个位。
答案 1 :(得分:5)
据我所知,从大学时代起,这就是它的发展方式
如果32 = 地址总线的大小,那么可以寻址的内存总数地址 = 2 ^ 32 = 4294967296
但是,这些是内存位置的4294967296 地址。由于每个内存位置本身= 1个字节,因此这为我们提供了可以寻址的4294967296个字节。
因此可以解决4GB内存问题。
答案 2 :(得分:1)
不,这是千兆字节。一个字节有8位,因此您必须将结果数乘以8才能得到这些位。正如约翰在他的回答中所说,你不能解决单个位,你将不得不进行位移和屏蔽以获得单个位。
答案 3 :(得分:1)
在旧的游戏机时代,SNES和Megadrive游戏以MegaBits进行测量,因为根据定义,8MegaBit游戏听起来比1兆比特游戏更大。最后,大多数人都说8Megs,所以这种困惑再次给大多数人带来了8兆字节的印象。我不确定brett是在谈论SNES还是Megadrive编程,但要记住8 Megabits = 1兆字节。
答案 4 :(得分:-1)
上面的答案解决了这个问题,如果您希望解决超过4 gb的问题,那么您可以使用偏移存储寄存器,这可以帮助您解决更广泛的范围。