Chinaunix首页 | 论坛 | 博客
  • 博客访问: 242797
  • 博文数量: 253
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 3
  • 用 户 组: 普通用户
  • 注册时间: 2014-09-21 12:29
文章分类

全部博文(253)

文章存档

2014年(253)

我的朋友

分类: 嵌入式

2014-09-21 12:45:26

原文地址:arm汇编—bic ,orr 作者:andyhzw

操作系统:ubuntu10.04
汇编语言:arm


1,bic
BIC指令的格式为:
BIC{条件}{S}  目的寄存器,操作数1,操作数2
BIC指令用亍清除操作数1的某些位,幵把结果放置到目的寄存器中。操作数1应是一个寄存器,
操作数2可以是一个寄存器,被移位的寄存器,戒一个立即数。操作数2为32位的掩码,如果在
掩码中设置了某一位,则清除返一位。未设置的掩码位保持丌变。

bic r0,r0,#0x1f
0x1f=11111b
其含义:清除r0的bit[4:0]位。



2,orr
ORR指令的格式为:
ORR{条件}{S}  目的寄存器,操作数1,操作数2
ORR指令用亍在两个操作数上迕行逻辑戒运算,幵把结果放置到目的寄存器中。操作数1应是一
个寄存器,操作数2可以是一个寄存器,被移位的寄存器,戒一个立即数。该指令常用于设置操
作数1的某些位。
指令示例:
ORR R0,R0,#3          ;  该指令设置R0的0、1位,其余位保持不变。

orr r0,r0,#0xd3
    0xd3=1101 0111
    将r0不0xd3算数戒运算,然后将结果给r0,即把r0的bit[7:6]和bit[4]和bit[2:0]置为1。





阅读(778) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~