根据ARM架构的规定,ADCS指令将进位位加到结果中,然后更新标志位。所以进位位是在更新标志位之前加入结果的。
示例代码:
ADD r0, r1, r2 ; r0 = r1 + r2 ADCS r3, r4, r5 ; r3 = r4 + r5 + C ;其中C是进位位,r3的值是r4 + r5 + C的结果 CMP r6, r7 ;比较r6和r7
在上面的代码片段中,ADCS指令在执行完后会更新标志位。在执行CMP指令时,就可以根据ADCS的执行结果进行条件分支。
上一篇:ARM中CMP和TST指令有什么区别?
下一篇:ARM中的存储比较结果的寄存器是哪个注册器?