ADD {条件} {S} 目的寄存器,操作数1 , 操作数2.
操作数2 可以使寄存器也可以是 立即数。
举例:
ADD R0 , R1 , R2 : R1+R2 = R0
ADD R0, R1,#256 : R1+256 = R0
ADD R0,R2,R3,LSL#1: 将R3做移动1位,与R3 相加然后赋值给R0
SUB {条件} {S} 目的寄存器,操作数1 , 操作数2.
操作数2 可以使寄存器也可以是 立即数。
举例:
SUB R0 , R1 , R2 : R1-R2 = R0
SUB R0, R1,#256 : R1-256 = R0
SUB R0,R2,R3,LSL#1: 将R3做移动1位,与R3 相减然后赋值给R0
AND {条件} {S} 目的寄存器,操作数1 , 操作数2.
就是与运算
操作数2 可以使寄存器也可以是 立即数。
AND R0, R0, #3 , 这其实也就是再执行掩码的操作。这个指令 跟TST 还是有些区别的。
ORR {条件} {S} 目的寄存器,操作数1 , 操作数2.
就是或运算
操作数2 可以使寄存器也可以是 立即数。
AND R0, R0, #3 , 这就是再设置 某些位置。
BIC {条件} {S} 目的寄存器,操作数1 , 操作数2.
这是再执行清除操作,清楚 为1 的位。
举例:
BIC, R0, R0 ,#%1011 , 这是再清除 1,2,3 位置。