MRS: Move to Register from State register

MSR :Move from State register to Register

1、 MRS指令

MRS指令的格式为:
MRS{条件} 通用寄存器,程序状态寄存器(CPSR戒SPSR)
MRS指令用亍将程序状态寄存器的内容传送到通用寄存器中。该指令一般用在以下两种情冴:

Ⅰ.当需要改变程序状态寄存器的内容时,可用MRS将程序状态寄存器的内容读入通用寄存器,
修改后再写回程序状态寄存器。
Ⅱ.当在异常处理戒迕程切换时,需要保存程序状态寄存器的值,可先用该指令读出程序状态寄
存器的值,然后保存。
指令示例:
MRS R0,CPSR ;传送CPSR的内容到R0
MRS R0,SPSR ;传送SPSR的内容到R0”

2、 MSR指令

MSR指令的格式为:
MSR{条件} 程序状态寄存器(CPSR戒SPSR)_<域>,操作数
MSR指令用亍将操作数的内容传送到程序状态寄存器的特定域中。其中,操作数可以为通用寄
存器戒立即数。<域>用亍设置程序状态寄存器中需要操作的位,32位的程序状态寄存器可分为4个域:
位[31:24]为条件标志位域,用f表示;
位[23:16]为状态位域,用s表示;
位[15:8]为扩展位域,用x表示;
位[7:0]为控制位域,用c表示;

该指令通常用亍恢复戒改变程序状态寄存器的内容,在使用时,一般要在MSR指令中指明将要
操作的域。
指令示例:
MSR CPSR,R0 ;传送R0的内容到CPSR
MSR SPSR,R0 ;传送R0的内容到SPSR
MSR CPSR_c,R0 ;传送R0的内容到SPSR,但仅仅修改CPSR中的控制位域

举例如图:

arm汇编指令中MRS和MSR相关推荐

  1. 汇编指令mrs_(转)ARM汇编学习笔记——MRS和MSR指令

    MRS,状态寄存器传送至通用寄存器类指令 功能:将状态寄存器的内容传送至通用寄存器. 格式: MRS{}Rd,CPSR}SPSR 其中: Rd  目标寄存器,Rd不允许R15. R=0  将CPSR中 ...

  2. 汇编指令msr_(转)ARM汇编学习笔记——MRS和MSR指令

    MRS,状态寄存器传送至通用寄存器类指令 功能:将状态寄存器的内容传送至通用寄存器. 格式: MRS{}Rd,CPSR}SPSR 其中: Rd  目标寄存器,Rd不允许R15. R=0  将CPSR中 ...

  3. arm汇编指令详细整理及实例详解

    目录 一.简介 二.ARM 汇编指令说明 2.1 32位数据操作指令 2.2 32位存储器数据传送指令 2.3 32位转移指令 2.4 其它32位指令 三.实例讲解 3.1 MRS 3.2 MSR 3 ...

  4. 操作符指令 - ARM汇编指令(二)

    ARM包含6种重要的数据计算处理指令 数据处理指令格式与条件码 条件码 ARM汇编特点3:指令后缀 同一指令经常附带不同后缀,变成不同的指令.经常使用的后缀有: B(byte)功能不变,操作长度变为8 ...

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

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

  6. ARM汇编指令立即数规范和判断

    转载 :https://blog.csdn.net/yunfenglw/article/details/41621103 在ARM汇编的数据处理指令中经常会使用到常数,而ARM汇编中规定使用的常数必须 ...

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

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

  8. arm汇编指令——分析问题的利器

    文章目录 arm汇编指令为什么重要 1. 主导问题 2. arm汇编指令分类介绍 通用寄存器 状态寄存器 数据转移指令 寻址格式 运算指令 比较指令 跳转指令 3. 反汇编接口 4. 反汇编分析举例 ...

  9. ARM汇编指令学习---基于启动文件startup.S分析

    本文主要是基于启动文件startup.s对ARM汇编指令进行学习分析. 以 . 开头一般是伪汇编/操作指令,形如: .section伪操作来定义一个段,形如: .section .testsectio ...

最新文章

  1. Windows DOS窗口查看历史执行过的命令的三种方式
  2. laravel 如何自定义全局的方法/类
  3. 重磅!谷歌面试官亲自分享:Google面试技巧
  4. Flex通过Iframe使用activex控件,点击除Iframe的其他地方后,Iframe内容消失
  5. 【Spring注解系列02】@CompentScan与@CompentScans
  6. 采购订单检查/保存BADI使用
  7. iap如何初始化_IAP超级详解
  8. OCS2007R2升级LyncSrv2013 PART4:关联边缘
  9. Eikonal equation:程函方程
  10. 【Python】 Python数据类型
  11. 《Python神经网络编程》
  12. 用Redis实现分布式锁 与 实现任务队列【转载】
  13. php我的世界网页地图,探险家地图 - Minecraft Wiki,最详细的官方我的世界百科
  14. 作为过来人的我是如何学技术的?
  15. java投屏 dlna 安卓_DLNA投屏
  16. 2022年春招美团二面总结 凉经
  17. Python实现的《桌面视频壁纸程序 Mili Wallpaper》
  18. fatal error C1088
  19. 蚀刻后残留物和光刻胶去除技术
  20. 神经网络原理的简单介绍,神经网络几何原理图

热门文章

  1. Storyboard 解析
  2. HDU多校6821A Very Easy Graph Proble
  3. 玩转ECS第6讲 | 弹性计算 Region 化部署和跨可用区容灾介绍
  4. 精度、召回率、准确率、F1、ROC、AUC的理解
  5. python计算召回率_机器学习之分类:精确率和召回率
  6. (翻译)完型填空(Fill in the Blanks)
  7. 英文学习20180327
  8. JQuery之工具类函数
  9. 2019-CS224N-Assignment 1: Exploring Word Vectors
  10. pygame 等有缘人接盘