提取完成后,PC寄存器指向什么?

时间:2019-04-09 21:56:39

标签: x86 mips cpu-architecture program-counter

提取完成后,PC寄存器指向什么?

是要执行的下一条指令地址,还是其他?

1 个答案:

答案 0 :(得分:2)

在x86中,IP寄存器(PC的英特尔名称)没有明确定义的值,

  • 通过调用,中断或错误将其写入堆栈时,在这种情况下,它具有最后一条完成执行的指令之后的指令地址。
  • 用于IP相对寻址时,在这种情况下,它具有包含IP相对地址的指令之后的指令地址。
  • 我不会在这里讨论的其他情况,例如任务切换。

由于流水线化,在任何情况下都与获取的最后一条指令无关。实际上,可能有多个指令同时执行IP相对地址,并且每个指令在其地址计算中使用不同的IP值。

(我想对于MIPS也是一样,但我不能说。)