就此wikipedia article所示,在获取周期中,PC将其内容发送到连接到地址总线的MAR。然后PC增加。(因为这里正在复制值,所以如果我们直接连接PC和地址总线,则不需要MAR。)
我的问题是为什么PC没有与地址总线直接连接?它将比以前的版本快得多。 MAR服务于什么特殊目的?
同样适用于MBR和IR,这里的数据是从MBR复制的 - > IR。我在这里错过了什么? 任何帮助将不胜感激。
答案 0 :(得分:2)
IR存储正在执行的当前指令。
PC存储当前正在执行的指令的地址。执行后,PC获取新指令的地址。 IR仍然包含旧指令。
IR和PC无法访问地址总线,只有MAR和MDR可以。
PC和IR必须与MAR和MDR交互,因为MAR和MDR是位于CPU与数据和地址总线之间的寄存器。之后,出于效率原因,我们可能会决定删除MAR和/或MDR。
有关详细信息,请参阅此link。