以下内容源于网络资源的整理,如有其侵权请告知删除。

1、bic 位清除指令(Bit Clear)

指令格式

bic{条件}{S}  Rd,Rn,operand

指令说明

将 Rn 的值与操作数 operand 的反码按位逻辑”与”,结果存放到目的寄存器Rd 中(?)

(对于上面这个描述我是存在疑问的。根据实际代码的效果,操作数operand的哪位为1,则Rn对应的位将清除。我不清楚这里的清除是不是变为0,如果是的话,感觉bic指令的作用,是将Rn的值与操作数operand按位逻辑或,然后再将结果按位取反。因为这个指令的说明,是一些人从ARM官方文档翻译下来的,然后被传播,也不知道会不会以讹传讹呢?这个翻译会不会是说“将 Rn 的值与操作数 operand 按位取反之后的值进行按位逻辑与?因此我理解为,根据operand哪个位为1,清除Rn对应的位,然后将结果存入Rd。)

关于反码的介绍,见博客原码、反码、补码,以及负数的位操作。

指令示例

bic    r0, r0, #0x00002000    @ clear bits 13 (--V-)  0010 0000 0000 0000
bic r0, r0, #0x00000007    @ clear bits 2:0 (-CAM) 0000 0000 0000 0111

2、orr 位或指令

指令格式
orr{条件}{S}  Rd,Rn,operand

指令说明

orr指令将Rn 的值与操作数operand2按位逻辑”或”,结果存放到目的寄存器Rd 中。

根据operand哪个位为1,将Rn对应的位设置为1,然后将结果存入Rd。

指令示例

orr R0,R0,#0xd3 @将R0的第[7:0]位与b'1101 0011按位或,并保存在R0中

3、eor 异或指令(exclusive or)

指令格式
eor{条件}{S}  Rd,Rn,operand

指令说明

eor指令将Rn 的值与操作数operand2按位逻辑”异或”,相同为0,不同为1,结果存放到目的寄存器Rd 中。

汇编指令——bic(位清除)、orr(位或)、eor (异或)相关推荐

  1. dspic33 怎么C语言编程,Microchip工程师社区 - dsPIC33汇编指令 - 16位MCU及DSC - 麦田论坛...

    dsPIC33汇编指令 最近在看从Microchip官网上下载的电机控制代码,其中一部分是汇编代码: .include "general.inc" ; External refer ...

  2. arm学习之基本汇编指令

    文章目录 1. 汇编文件中的主要符号 1.1 汇编指令 1.2 伪指令 1.3 伪操作 2. 汇编指令的分类 3. 基本汇编指令语法格式 4. 数据操作指令 4.1 数据搬移指令 4.1.1 指令格式 ...

  3. S3C2440 汇编指令

    arm汇编指令集 算术和逻辑指令 adc : 带进位的加法 (addition with carry) adc{条件}{s}  <dest>, <op 1>, <op 2 ...

  4. Android逆向基础笔记—Android中的常用ARM汇编指令

    一  ARM寄存器 1.通用寄存器 1).未分组寄存器:R0~R7 2).分组寄存器:R8~812 R13:SP,常用作堆栈指针,始终指向堆栈的顶部,当一个数据(32位)推入堆栈时,SP(R13的值减 ...

  5. 1.15.ARM汇编指令3之逻辑指令

    ARM汇编指令之逻辑指令:and & orr & eor & bic * and 逻辑与操作指令,将operand2的值与寄存器Rn的值按位逻辑与操作,结果保存到Rd中. 指令 ...

  6. 01 ARM体系结构与汇编指令

    注:本文章是由笔者学习朱有鹏arm的学习笔记,特此感谢朱老师. 关于汇编: 1.汇编的实质是机器指令(机器码)的 助记符,是一款CPU的本质特征. 2.不同CPU的机器指令集设计不同,因此 汇编程序不 ...

  7. 【嵌入式开发】 ARM 汇编 (指令分类 | 伪指令 | 协处理器访问指令)

    作者 : 韩曙亮 博客地址 : http://blog.csdn.net/shulianghan/article/details/42408137  转载请著名出处 本博客相关文档下载 :  -- A ...

  8. 小于等于0_从0开始学ARMARM汇编指令其实很简单

    学习ARM,就必须要学习ARM指令,ARM指令是CPU提供给我们的接口,是我们打开CPU这个潘多拉魔盒的钥匙. ARM指令有很多,为了让大家能快速上手,一口君整理了一些对我们最有帮助的指令.keil软 ...

  9. ida pro 反汇编 Android so 库后修改 arm 汇编指令的方法总结

    1 前言 最近博主在学习Android逆向的时候,参照吾爱破解论坛的<教我兄弟学Android逆向系列课程>学习的时候,学到第8章<教我兄弟学Android逆向08 IDA爆破签名验 ...

  10. matlab 位清零,数据处理指令之: BIC位清零指令

    6.14 BIC位清零指令1.指令的编码格式 BIC(Bit Clear)位清零指令,将寄存器Rn的值与第二源操作数的值的反码按位做"逻辑与"操作,结果保存到Rd中. 指令的编码格 ...

最新文章

  1. android ffmpeg 编码h264,Mac系统下ffmpeg+h264+flv编码的android录制屏幕实现2
  2. poj-1384 Piggy-Bank
  3. 华为怎么显示返回按键_华为 iateey 智能饮水吧评测:即时加热,一秒出水
  4. uClinux下移植Ne2000兼容的网卡驱动程序(转)
  5. android 如何修改百度导航诱导界面,Android 百度导航SDK
  6. Nginx 禁止猜测路径上传恶意代码
  7. Qt输入输出之QProcess
  8. pdf转cad怎么弄_CAD转PDF怎么弄?在线老师傅教你一招
  9. linux中()、[]、{}、(())、[[]]等各种括号的使用
  10. Spring Boot:Canonical names should be kebab-case (‘-‘ separated), lowercase alpha-numeric characters
  11. python自由落体_pymunk教程_自由落体小球_Pymunk滑动和铰接演示教程
  12. 高质量程序设计指南(笔记)
  13. Java单元测试实践-08.Stub、Replace、Suppress静态方法
  14. 几种混沌系统混沌模型
  15. 金融跨计算机考研,计算机跨金融——我的二战考研复习计划给你们
  16. iOS获取设备IP地址
  17. 聊聊benchmark测试
  18. OpenLayers教程十一:多源数据加载之用最简单的方式加载瓦片地图
  19. (第15章 存储过程与存储函数)
  20. 麒麟A1手表升级鸿蒙,HUAWEI WATCH GT2首发体验: 首款麒麟A1的手表有多神?14天续航小意思...

热门文章

  1. Windows 11 中打印时提示打印机不兼容,都来是“+”惹的祸
  2. 英语复数名词的变化规则
  3. centOS7 清理系统垃圾
  4. 解决selenium自动关闭浏览器
  5. Markdown Preview Enhanced (MPE)踩坑记录
  6. 时域OCT与频域OCT的区别
  7. mysql数据库反弹端口连接提权
  8. springboot网上投资借贷中介服务毕业设计-附源码221506
  9. 作文组装计算机,组装电脑作文200字
  10. java8使用并行流parallelStream以及普通迭代,并行流,普通流之间的效率对比