MCR指令ARM数据寄存器传送到协处理器寄存器。假设协处理器不能成功运行操作。会产生未定义指令中止。

语法教学格式:

MCR{<cond>} p15, 0, <Rd>, <CRn>, <CRm>{,<opcode_2>}

MCR2 p15, 0, <Rd>, <CRn>, <CRm>{,<opcode_2>}

当中。<cond>为指令运行的条件码。当<cond>忽略时指令为无条件运行。MCR2中,<cond>为Ob1111,指令为无条件运行指令。

<opcode_1>为协处理器将运行的操作的操作码。

对于CP15协处理器来说, <opcode_1>永远为0b000,当<opcode_1>不为0b000时,该指令操作结果不可预知。

<Rd>作为元寄存器的ARM寄存器。其值被传送到得协处理器寄存器中。

<Rd>不能为PC。当其为PC时。指令操作结果不可预知。

<CRn>作为目标寄存器的协处理器寄存器,其编号可能为C0,C1....C15。

<CRm>附加的目标寄存器或者原操作数寄存器。用于区分同一个编号的不同物理寄存器。当指令中不须要提供附加信息时,将C0指定为<CRm>,否则指令操作结果不可预知。  <opcode_2>提供附加信息,用于差别同一个编号的不同物理寄存器。当指令中指定附加信息时,省略<opcode_2>或者将其指定为0,否则指令操作结果不可预知。

MRC指令将协处理器的寄存器中数值传送到ARM处理器的寄存器中。假设协处理器不能成功地运行该操作,将产生没有定义的指令异常中断。

指令的语法格式:

MRC{<cond>} p15, 0, <Rd>, <CRn>, <CRm>{,<opcode_2>}

MRC2 p15, 0, <Rd>, <CRn>, <CRm>{,<opcode_2>}

转会http://blog.chinaunix.net/uid-26945045-id-3198519.html

ARM装配说明MCR/MRC学习的更多相关文章

  1. ARM汇编指令MCR/MRC学习

    MCR指令将ARM处理器的寄存器中的数据传送到协处理器的寄存器中.假设协处理器不能成功地运行该操作.将产生没有定义的指令异常中断. 指令的语法格式: MCR{<cond>} p15, 0, ...

  2. 浅析ARM协处理器CP15寄存器有关指令:MCR\MRC

    ref:http://blog.csdn.net/gameit/article/details/13169405 背景: 在uboot中,start.s中涉及到了 CP15 的有关操作.查阅有关资料, ...

  3. (转)ARM协处理器主要用途 及其 指令CDP LDC STC MCR MRC介绍

    原文地址:http://zqwt.012.blog.163.com/blog/static/120446842010111610612200/ ARM 微处理器可支持多达 16 个协处理器,用于各种协 ...

  4. 协处理器CP15介绍—MCR/MRC指令(6)

    概述:在基于ARM的嵌入式应用系统中,存储系统的操作通常是由协处理器CP15完成的.CP15包含16个32位的寄存器,其编号为0-15. 而访问CP15寄存器的指令主要是MCR和MRC这两个指令. 例 ...

  5. 嵌入式物联网32 ARM linux 等创客学院学习视频共享给大家

    大家手机号登录学习链接即可观看   有坛友说手机号登录不上  具体自测  http://www.makeru.com.cn/live/1392_303.html?s=60220走进嵌入式http:// ...

  6. ARM 链接配置.lds文件学习<转>

    本文由Jacky原创,来自http://blog.chinaunix.net/u1/58780/showart.php?id=462971 对于.lds文件,它定义了整个程序编译之后的连接过程,决定了 ...

  7. 七、ARM 指令集

    7.1 数据处理指令 7.1.1 数据传送类 MOV 类指令:核内寄存器间的数据传送 加载和存储指令(L/S):核内寄存器与挂在存储器总线上器件的数据传送 注意: 核内寄存器就是 R0-R15 外设寄 ...

  8. Spring学习系列(三) 通过Java代码装配Bean

    上面梳理了通过注解来隐式的完成了组件的扫描和自动装配,下面来学习下如何通过显式的配置的装配bean 二.通过Java类装配bean 在前面定义了HelloWorldConfig类,并使用@Compon ...

  9. spring学习总结——装配Bean学习二(JavaConfig装配bean)

    通过Java代码装配bean 前言:上面梳理了通过注解来隐式的完成了组件的扫描和自动装配,下面来学习下如何通过显式的配置的装配bean: 使用场景:比如说,你想要将第三方库中的组件装配到你的应用中,在 ...

随机推荐

  1. hdu1028(整数划分问题)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1028 整数划分问题 整数划分 --- 一个老生长谈的问题: 描述 整数划分是一个经典的问题.请写一个程 ...

  2. [置顶] ※数据结构※→☆线性表结构(list)☆============双向链表结构(list double)(三)

    双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱.所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点. ~~~~~~~~~~~~ ...

  3. IIS7 配置 PHP5.5

    本文环境: 操作系统:Win7(x64) 中文专业版 PHP       :V5.5 首先添加IIS. 控制面板-〉程序-〉打开或关闭Windows功能 1. 勾选“Internet 信息服务”   ...

  4. Cannot instantiate the type List&lt;Integer&gt;

    在使用java.util.List; 的时候,把语句写成了: List<Integer> arr = new List<Integer>(); 导致错误: Cannot ins ...

  5. 13.怎样自学Struts2之Struts2本地化[视频]

    13.怎样自学Struts2之Struts2本地化[视频] 之前写了一篇"打算做一个视频教程探讨怎样自学计算机相关的技术",优酷上传不了,仅仅好传到百度云上: http://pan ...

  6. pygame系列

    在接下来的blog中,会有一系列的文章来介绍关于pygame的内容,pygame系列偷自http://www.cnblogs.com/hongten/p/hongten_pygame_install. ...

  7. DIV 居中对齐

    <div style="text-align:center;margin-right:auto;margin-left:auto">

  8. python学习笔记之三:字典,当索引不好用时

    字典是python中唯一内建的映射类型.字典中的值并没有特殊的顺序,但是都存储在一个特定的键(key)里.键可以是数字,字符串甚至是元组. 1. 创建和使用字典 字典可以通过下面的方式创建: phon ...

  9. Android开发之文件下载,状态时显示下载进度,点击自动安装

    在进行软件升级时,需要进行文件下载,在这里实现自定义的文件下载,并在状态栏显示下载进度,下载完成后,点击触发安装. 效果如图: 用于下载文件和显示现在进度的线程类如下: [java]  view pl ...

  10. Android PackageInstaller 安装和卸载

    应用的安装方式:adb install或者下载安装 过程分析请參考老罗的blog,这里记录一下第三方应用程序安装apk的过程. 安装的过程主要是调用PackageInstaller这个App,源码的位 ...