存储器地址寄存器(MAR)和程序计数器(PC)如何彼此不同?
答案 0 :(得分:8)
不同之处在于程序计数器指向要获取/执行的下一条指令,而存储器地址寄存器指向一个存储器位置,正在运行的程序将获取一些数据(而不是指令)。
答案 1 :(得分:3)
PC:程序计数器(PC)保存下一条指令的地址,该指令将被执行或解码。
IR:指令寄存器(IR)保存当前正在执行或解码的指令。
MAR:存储器地址寄存器(MAR)保存存储器中的位置地址,该地址包含正在执行的当前指令所需的数据。 只需MAR指向包含所需数据的内存位置。
答案 2 :(得分:1)
存储器地址寄存器(MAR)保存从中取出数据的地址位置,以便将其引入CPU的寄存器组件。
程序计数器(PC)保存NEXT指令的位置(存储在存储器中的所有内容都有一个地址)。希望这有帮助
答案 3 :(得分:1)
程序计数器(PC)存储执行当前指令后从存储器中取出的下一条指令的地址。
来自PC的地址被加载到地址寄存器(AR)中:AR<--PC
地址寄存器(AR)给出的存储单元指令被加载到指令寄存器(IR)中:IR<--M[AR]
程序计数器增加到下一条指令的地址:PC<--PC+1
答案 4 :(得分:0)
程序计数器(PC)是CPU正在执行的当前指令的地址。存储器地址寄存器(MAR)可以包含由加载或存储指令访问的数据的地址。
答案 5 :(得分:0)
程序计数器 程序计数器保存要取出 - 解码 - 执行的下一条指令的地址。这将在解码当前指令时自动递增
存储器地址寄存器(MAR)保存正在执行的当前指令的地址。它指向存储器中所需指令所在的相关位置(在此阶段,地址只是从程序计数器复制)。
答案 6 :(得分:0)
程序计数器使用逻辑地址(程序生成的虚拟地址),其中地址寄存器使用物理地址(实际实际存储器地址)。这是主要的区别。
答案 7 :(得分:0)
我在一本书中读到过
PC 只保存指令的地址
PC 将指令地址传给 MAR 后立即加一个数
MAR 在寻址周期中保存指令的地址
在后续获取周期中保存数据的地址
这些是差异的一部分(可能还有其他差异)