【arm】PC=PC+8 ?

ARM 113浏览


Date: 2018.9.28


1、参考

https://blog.csdn.net/adu_add/article/details/51917265
https://blog.csdn.net/aspenstars/article/details/72900811
https://blog.csdn.net/lee244868149/article/details/49488575/

2、ARM7三级流水线中为何PC=PC+8?

   R15(PC)总是指向“正在取指”的指令,而不是指向“正在执行”的指令或正在“译码”的指令。一般来说,人们习惯性约定将“正在执行的指令作为参考点”,称之为当前第一条指令,因此PC总是指向第三条指令。当ARM状态时,每条指令为4字节长,所以PC始终指向该指令地址加8字节的地址,即:PC值=当前程序执行位置+8。

在这里插入图片描述

ARM7 三级流水线示意图


THE END!