指令表关键词       
Rm {, <opsh>} 寄存器移位方式,将寄存器的移位结果作为操作数而Rm值保持不变      
<Operand2> 灵活的使用第二个操作数。移位和循环最合适作为第二操作数的一部分使用 <reglist> 由大括号括起来的一些用逗号分割的寄存器列表。如:{ and }.  
<fields> 查看程序状态寄存器域目录. <reglist-PC> 加载或存储的寄存器列表,但不含程序计数器寄存器。  
<PSR> 包含CPSR (当前程序状态寄存器) 或SPSR (程序状态保存寄存器)  <reglist+PC> 须有程序计数器寄存器列表。将SPSR拷贝到CPSR中,用于从异常处理返回。  
C*, V* 标志值在V4及之前的架构中是不确定的, 在V5及之后则是不变的. +/- 正或负. (+ 有可能被忽略.)  
<Rs|sh> 可能是Rs或一个可移位的立即数. 值由寄存器中可用的各种移位方式进行  § ARM体系结构版本  
  任意位循环移动得到 <iflags> 中断标志. 一个或多个异常,中断,快速中断.   
x,y B 指寄存器低位 [15:0], 而 T 指高位[31:16]. (Bottom,Top) <p_mode> 识别处理机模式  
<imm8m> ARM: 32位常数,由一个8位数循环右移偶数位得到。  SPm 由<p_mode>区分的处理机模式的堆栈指针  
  Thumb: 32位常数,由一个8位数左移一位或多位数得到。 <lsb> 位域的最低有效位  
  型如以下形式之一: 0xXYXYXYXY, 0x00XY00XY or 0xXY00XY00 <width> 位域的宽度. <width> + <lsb> 须<=32  
<prefix> 相似指令的前缀 {X} RsX 是在x置位时Rs循环移动16位. 否则, RsX=Rs.   
{IA|IB|DA|DB} 分别指:传送后地址增加, 传送前地址增加, 传送后地址减少, 传送前地址减少4个字节。 {!} 若 ! 存在 (预先变址),则数据传送后更新基址寄存器(Rn)。   
  IB和 DA在Thumb状态下是不可用的. 如未指定,默认使用IA. {S} 若S存在更新标志位  
<size> B , SB, H, or SH, 分别指:字节, 带符号位的字节, 半字, 带符号位的半字。 {T} 若T存在给用户模式特权  
  SB 和 SH在STR 指令中不可用。 {R} 若R存在恢复最近的结果,否则丢弃结果。  

ARM ® and Thumb ®-2 指令系统的更多相关文章

  1. ARM 的Thumb状态测试

    作为一个使用ARM的学习者,有必要全面了解你的处理器内核.尽管有些内容可能在实际应用中用不到,但是“了解”还是很必要的.Thumb状态,是ARM的一个特色,但是你知道Thumb状态与ARM状态最大的区 ...

  2. 对于Android NDK编译器ARM和Thumb模式的理解

    编译NDK项目时,编译器无法识别arm汇编,设置LOCAL_ARM_MODE := arm后问题解决, NDK文档上对LOCAL_ARM_MODE的说明如下: LOCAL_ARM_MODE By de ...

  3. ARM处理器的寄存器,ARM与Thumb状态,7中运行模式

     ** ARM处理器的寄存器,ARM与Thumb状态,7中运行模式  分类: 嵌入式 ARM处理器工作模式一共有 7 种 : USR  模式    正常用户模式,程序正常执行模式 FIQ模式(Fast ...

  4. ARM处理器的寄存器,ARM与Thumb状态,7中运行模式 【转】

    转自:http://blog.chinaunix.net/uid-28458801-id-3494646.html ARM处理器工作模式一共有 7 种 : USR  模式    正常用户模式,程序正常 ...

  5. ARM指令系统

    转载自:http://cxb4224.blog.163.com/blog/static/191224151201110220325976/ ARM处理器的工作状态和工作模式 工作状态 ARM处理器一般 ...

  6. ARM状态和THUMB状态

    ARM处理器的工作状态 在ARM的体系结构中,可以工作在三种不同的状态,一是ARM状态,二是Thumb状态及Thumb-2状态,三是调试状态. <嵌入式系统开发与应用教程(第2版)>上介绍 ...

  7. [转]ARM/Thumb/Thumb-2

    ref:http://kmittal82.wordpress.com/2012/02/17/armthumbthumb-2/ A few months ago I gave a presentatio ...

  8. 13 ARM指令集与Thumb指令集

    指令格式 ARM基本格式 <opcode>{<cond>}{S}{.W|.N}<Rd>,<Rn>{,<operand2>} opecode: ...

  9. ARM汇编程序中的伪指令

    转自http://blog.chinaunix.net/uid-13701930-id-336459.html 4.1 ARM汇编器所支持的伪指令 在ARM汇编语言程序里,有一些特殊指令助记符,这些助 ...

随机推荐

  1. 【鬼脸原创】谷歌扩展--知乎V2.0

    目的: 用键盘替代鼠标,做一个安静刷知乎的美男(女)子! 功能:   功能 按键 说明 直接定位到搜索框 q   打开 首页 w   打开 话题 e   打开 发现 r   打开 消息 m   打开 ...

  2. Linux下配置Samba服务器全过程

    Linux下配置Samba服务器全过程 user级别的samba的配置 http://www.linuxidc.com/Linux/2014-11/109234.htm http://www.linu ...

  3. 如何使用 JMeter 调用你的 Restful Web Service?进行简单的压力测试和自动化测试

    表述性状态传输(REST)作为对基于 SOAP 和 Web 服务描述语言(WSDL)的 Web 服务的简单替代,在 Web 开发上得到了广泛的接受.能够充分证明这点的是主流 Web 2.0 服务提供商 ...

  4. 数据库中INFORMATION_SCHEMA的说明及使用

    第一个查询看看库里有多少个表,表名等select * from INFORMATION_SCHEMA.TABLES information_schema这张数据表保存了MySQL服务器所有数据库的信息 ...

  5. sql查询与修改数据库逻辑文件名,移动数据库存储路径

    USE mydb GO --1.查询当前数据库的逻辑文件名 ) ) AS 'File Name 2'; --或通过以下语句查询: --SELECT name FROM sys.database_fil ...

  6. 《精通Python设计模式》学习结构型之MVC模式

    这个就不需要多评论了, 哪个主流的PYTHON的WEB框架都有这些模式实现哈. quotes = ('A man is not complete until he is married. Then h ...

  7. explicit 显示的类型转换运算符

    C++提供了关键字explicit,可以阻止不应该允许的经过转换构造函数进行的隐式转换的发生.声明为explicit的构造函数不能在隐式转换中使用. 调用构造函数可以分为显示调用和隐式调用,当用赋值初 ...

  8. 面试题49:把字符串转换成整数(atoi)

    需要考虑的问题都已在程序中注释 bool isValid; int StrToInt(const char* str) { isValid = false; //不合法情形1:空指针 if (str ...

  9. spring调用方法(接口和多个实现类的情况)

    以spring框架注入bean说明接口TestService 有2个实现类 TestServiceImp1 @Service("TestService1") ,TestServic ...

  10. 基于 Struts2 的单文件和多文件上传

    文件的上传下载是 Web 开发中老生常谈的功能,基于 Struts2 框架对于实现这一功能,更是能够给我们带来很多的便利.Struts2 已经有默认的 upload 拦截器.我们只需要写参数,它就会自 ...