在之前的arm汇编语言中,我已经说过了两个在我现在学习阶段比较重要的两个指令ldr和str。这次我就来说我另外所学的两个指令bic和orr。
(1)bic指令用于清除操作数1的某些位,并把结果放置到目的寄存器中。
bic{条件}{S} 目的寄存器,操作数1,操作数2
这个就是bic指令的式子
操作数1是一个寄存器,操作数2是一个寄存器或移位寄存器或立即数,bic指令主要是用于把一些位置变成0,也就是利用位"非与"
的形式把该些位变为0。
bic R0, R0, #0xff 这个式子就是把最后的八个位变成0,主要工作就是先把0xff取反得到0xffffff00,再与R0相与,保持前面的
位不变,后面的八位置0。
其意义:清除R0的bit[7:0]
(2)orr指令用于在两个操作数上进行逻辑戒运算,并把结果放置到目的寄存器中。
orr{条件}{S} 目的寄存器,操作数1,操作数2
这个就是orr指令的式子
操作数1是一个寄存器,操作数2是一个寄存器或移位寄存器或立即数,orr指令主要用于把一些位置为1,其主要运用逻辑或的方式把
该些位置为1。
orr R0, R0, #0xff 这个式子就是把最后的八个位置为1,主要的工作就是先把0xff与R0进行逻辑或,然后把这个数存进R0中。其它的位
保持不变。
其意义: 置R0的bit[7:0]为1