语法:

bic{条件}{S} Rd,Rs,寄存器移位操作或立即数

备注:
{条件} 可选项
Rd 目的寄存器;
Rs 源寄存器
寄存器移位操作或立即数 可以是一个寄存器,被移位的寄存器,或一个立即数。
寄存器移位操作或立即数 如果在32位CPU中,那么为32位的掩码,如果在掩码中置了某一位1,则清除Rs对应的这一位,未设置的掩码位保持不变。

运算原理:

将 Rs 和 寄存器移位操作或立即数的反码,按位做 逻辑与 操作,并把结果放到 Rd 中。

简单理解:
将 Rs 中 对应的 寄存器移位操作或立即数 位为1的那些位清零后给 Rd 。

功能:

BIC指令用于清除 Rs 的某些位,并把结果放置到 Rd 中。

示例:

  • 演示 清除r0的bit[1:0]位
    mov r0, #0xFF
    ;//运算之后 r0 = 0x03
    bic r0, r0, #0xFC