数据总线和内存单元寻址混淆

问题描述

我有一个关于(RAM)内存单元的问题:

对于 cpu 架构 x32, 我们将有 32 位大小的 cpu 寄存器,以及到 32 线内存的数据总线和 32 线地址总线。 所以最大内存地址单位是2^32 = 4,294,967,296

换句话说,我们有 4,296 个内存单元,对于每个内存单元,数据总线 (32) 大小应该是可写的,因此对于每个内存单元,它的大小应该是 32 位以处理数据总线

如果我得出的结论是正确的,我怀疑,(Ram)总内存大小应该是 = 没有内存单元 * 每个大小 = 4,296 * 32 = 137,438,953,472 位。这是不对的

经过研究,我发现,rams 单元内存被标准化为每个内存单元 8 位, 那么如果是这样的话,为什么单个内存单元(8位)可以存储(32位数据总线)?

解决方法

确实如此,如果您没有 32 位数据,这告诉您的是内存可以容纳 2^32 个内存地址。但是,对于每个内存,您拥有的是一个字节或八位,那么您将拥有大约 4 GiB = 4*2^30 字节 = 2^32 位。