我一直在阅读我收集的装配书中的记忆模型,我有一两个问题。假设地址总线有32行,数据总线有32行,CPU是32位(为简单起见)。现在,如果CPU发出读取请求并发送32位地址,但只需要8位,那么所有32位都会返回?此外,内存中的地址仍然按字节正确解决?因此,取一个字节会将0000 0001带回地址0000 0004?
答案 0 :(得分:8)
总的来说,是的。通过从总线读取部分单词没有任何好处,所以读完整个单词。指令指定实际加载或存储在寄存器中所需的单词部分。
也就是说,这些天直接从记忆中读取的情况很少见。 CPU具有99%的时间与之交互的缓存,当数据不在缓存中时,引入整行(多个单词),然后您仍然从缓存中读取。
另请注意,许多现代CPU实际上都有64位总线。
答案 1 :(得分:2)