0

一台计算机有 16 条地址线(地址总线?)和 8 位字长。什么是可寻址性?

我发现地址空间是 2^16 = 65536,但我仍然不知道如何计算可寻址性。

我知道可寻址性是每个空间占用的字节数,但我该如何计算呢?任何帮助将不胜感激,尤其是一些将字长/地址总线与可寻址性相关联的通用公式。

如果这个问题超级简单,我很抱歉。

4

1 回答 1

3

由于您可以在地址总线上放置 2^16 个唯一值,并且您希望能够以字节粒度寻址内存,因此每个值都映射到单个字节。

如果您的机器总是加载 64B 缓存线,并且您的 RAM 设置为从请求的地址提供 64B 突发,那么您只需要 10 条地址线即可覆盖相同的 64k 内存。CPU 会在内部整理出负载实际需要的字节,而无需将 . (或使用 16 条地址线,2^16 * 64B 可寻址性)。

如果您想要位寻址存储器,字大小 = 1b,2^16 位只有 2^13 字节。

在现实生活中,内存控制器将地址分成两半传输到 DRAM,这将地址线的数量减少了一半。请参阅Ulrich Drepper 的 What Every Programmer Should Know About Memory中提到了这一点,但侧重于缓存行为以及如何对其进行优化。

于 2015-09-10T00:57:50.960 回答