执行ADDS PC#-4会发生什么?无限循环吗?

时间:2019-08-08 14:32:43

标签: assembly arm program-counter

因此,我正在尝试在特殊的上下文中为Arm指令编写仿真器,并且我想了解Arm处理器中程序计数器的完整行为。 规格说明如下

程序计数器(PC)作为PC(或R15)进行访问。它以执行指令的大小递增(在ARM状态下始终为四个字节)。分支指令将目标地址加载到PC中。您也可以使用数据处理说明直接加载PC。例如,要跳转到通用寄存器中的地址,请使用:    MOV PC,R0 在执行期间,PC不包含当前执行指令的地址。当前执行指令的地址通常对于ARM是PC-8,对于Thumb是PC-4。

据此我了解到,当执行ADDS PC时,#-4被执行时PC处于+4或+8,所以如果它处于+4,程序会进入无限循环吗?

0 个答案:

没有答案