腾讯建站官网广告制作公司注册
文章目录
- BIC 指令
 - ORR 位或指令
 - EOR 异或指令
 
上篇文章:ARM 常见汇编指令学习 5 – arm64汇编指令 wzr 和 xzr
下篇文章:ARM 常见汇编指令学习 7 - LDR 指令与LDR伪指令及 mov指令
BIC 指令
指令格式
bic{条件}{S}  Rd,Rn,operand
 
根据operand哪个位为1,清除Rn对应的位,然后将结果存入Rd。
使用例子:
bic	r0, r0, #0x00002000    // clear bit[13]   0010 0000 0000 0000
bic	r0, r0, #0x00000007    // clear bit[2:0]  0000 0000 0000 0111
 
第1条汇编代码表示将 r0 寄存器的 bit13 清0,其它bit不变。
 第2条汇编代码表示将 r0 寄存器的bit0-bit2清0,气他bit不变。
ORR 位或指令
指令格式
orr{条件}{S}  Rd,Rn,operand
 
根据operand哪个位为1,将Rn对应的位设置为1,其余位不变,然后将结果存入Rd。
使用例子:
orr R0, R0,  #(0x1 << 8) 
orr R0, R0,  #(0x1 << 16) 
 
表示将 r0 寄存器的 bit8 和bit16 置 1,其它bit不变。
EOR 异或指令
指令格式
eor{条件}{S}  Rd,Rn,operand 
 
指令说明
 eor 指令将 Rn 的值与操作数 operand 按位逻辑 ”异或”,相同为0,不同为1,结果存放到目的寄存器Rd 中。
上篇文章:ARM 常见汇编指令学习 5 – arm64汇编指令 wzr 和 xzr
 下篇文章:ARM 常见汇编指令学习 7 - LDR 指令与LDR伪指令及 mov指令
