我试图了解IT
用于在 Thumb2 模式下在 ARM 上启用指令的条件执行的指令的语法。
根据我的理解,CPSR 寄存器中的位以及IT
指令使 Thumb 模式下的条件执行成为可能。如果我正在编写一些 Thumb2 代码,也许我可以遵循下面提到的过程。
假设我有 4 个条件指令(由 支持的最大限制IT
)。
- 首先,我用条件指令写下来。假设四个指令的前缀是
CLZNE.W
,CLZEQ.W
,ADDEQ
,ADDNEQ
。 - 现在在条件指令之前,我添加了一个形式的指令
ITEEE NE
。NE 被添加,因为第一条指令有一个 NE。在EEE
下面最后3个指令的逆的IT相加NE
。这就是汇编程序员编写条件拇指2 ARM代码的方式吗?我对流程的理解是否正确? - 为什么条件编码在两者
IT
和后面的说明中?