汇编指令-bic(位清除)、orr(位或)(3)

1. bic  (Bit Clear)位清除指令 bic指令的格式为: bic{条件}{S}  Rd,Rn,operand 

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

指令示例:

bic R0,R0,#0x1F ;    //将R0最低5位清零,其余位不变。

2.orr 位或指令

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

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

指令示例:

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

3.eor异或指令(exclusive or)

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

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

4.设置2440位管理模式,实例:

mrs    r0,cpsr                         // 读状态寄存器cpsr的数据到r0中
bic    r0,r0,#0x1f                     // 对r0低5位进行清0,清除模式位
orr	r0,r0,#0xd3                    // 低8位或(110 10011), 设为管理(svc32)模式,禁止IRQ和FIQ中断
msr	cpsr,r0                        // 写入状态寄存器cpsr,更新。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏微信公众号:Java团长

Java网络爬虫基础知识

Java 网络爬虫具有很好的扩展性可伸缩性,其是目前搜索引擎开发的重要组成部分。例如,著名的网络爬虫工具 Nutch 便是采用 Java 开发,该工具以 Apa...

982
来自专栏高爽的专栏

Java线程(九):Condition-线程通信更高效的方式

        接近一周没更新《Java线程》专栏了,主要是这周工作上比较忙,生活上也比较忙,呵呵,进入正题,上一篇讲述了并发包下的Lock,Lock可以更好的...

2540
来自专栏大内老A

WCF技术剖析之十一:异步操作在WCF中的应用(下篇)

说完了客户端的异步服务调用(参阅WCF技术剖析之十一:异步操作在WCF中的应用(上篇)),我们在来谈谈服务端如何通过异步的方式为服务提供实现。在定义服务契约的时...

2019
来自专栏精讲JAVA

深入探索 Java 热部署

在 Java 开发领域,热部署一直是一个难以解决的问题,目前的 Java 虚拟机只能实现方法体的修改热部署,对于整个类的结构修改,仍然需要重启虚拟机,对类重新加...

791
来自专栏python学习之旅

Python笔记(十一):多线程

(二)和(三)不感兴趣的可以跳过,这里参考了《深入理解计算机系统》第一章和《Python核心编程》第四章 (一)      多线程编程 一个程序包含多个子任务,...

3977
来自专栏noteless

[二十五]JavaIO之RandomAccessFile

943
来自专栏python3

python 文件操作

新建一个txt文件,内容是《Yesterday When I Was Young》一首歌的歌词

942
来自专栏高性能服务器开发

我是一个线程(节选)

多线程编程在现代软件开发中是如此的重要,以至于熟练使用多线程编程是一名合格的后台开发人员的基本功,注意,我这里用的是基本功一词。它是如此的重要,所以您应该掌握它...

943
来自专栏青玉伏案

iOS开发之Alamofire源码解析

今天博客中的Alamofire源码的版本是以3.4版本为例。上篇博客系统的对NSURLSession相关的东西进行了详细的解析,详情请看《详解NSURLSess...

2697
来自专栏Python攻城狮

Python进程VS线程1.进程和线程2.同步的概念3.互斥锁4.多线程-非共享数据5.同步应用6.生产者与消费者模式

队列: 1、进程之间的通信: q = multiprocessing.Queue() 2、进程池之间的通信: q = multiproc...

963

扫码关注云+社区