下载此文档

3嵌入式系统设计与开发.ppt


文档分类:IT计算机 | 页数:约96页 举报非法文档有奖
1/96
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/96 下载此文档
文档列表 文档介绍
嵌入式系统设计与开发 第3章 ARM指令集
本章提要
ARM指令集概述
ARM寻址方式
ARM指令分类介绍
Thumb指令集
ARM指令集概述
ARM微处理器的指令集是加载/存储型的,也即指令集仅能处理寄存器中的数据,而且处理结果都要放回寄存器中,而对系统存储器的访问则需要通过专门的加载/存储指令来完成。
ARM体系具有ARM和Thumb两种指令集。
ARM指令集主要包括数据处理指令、分支指令、存储器访问指令、程序状态寄存器处理指令、协处理器指令和异常中断产生指令等。
ARM指令的编码格式
cond
xxx
opcode
S
Rn
Rd
shifter_operand
cond:指令执行的条件编码。
opcode:指令操作符编码。
S:决定指令的执行是否影响CPRS的值。
Rn:包含第一个源操作数的寄存器编码。
Rd:目标寄存器编码。
Shifter_operand:第二个源操作数。
31
28
27
25
24
21
20
19
16
15
12
11
0
ARM指令的语法格式如下:
<opcode> {<cond>} {S} <Rd> ,<Rn><shifter_operand>
其中<>号内的项是必须的,{}号内的项是可选的。各项的说明如下:
opcode:指令助记符; cond:执行条件;
S:是否影响CPSR寄存器的值;
Rd:目标寄存器;
Rn:第一个源操作数的寄存器;
shifter_operand :第二个源操作数;
ARM指令的条件码域
条件码
助记符后缀
标志
含义
0000
EQ
Z置位(Z=1)
相等
0001
NE
Z清零(Z=0)
不相等
0010
CS/HS
C置位
无符号数大于或等于
0011
CC/LO
C清零
无符号数小于
0100
MI
N置位
负数
0101
PL
N清零
正数或零
0110
VS
V置位
溢出
0111
VC
V清零
未溢出
1000
HI
C置位Z清零
无符号数大于
1001
LS
C清零Z置位
无符号数小于或等于
1010
GE
N等于V
带符号数大于或等于
1011
LT
N不等于V
带符号数小于
1100
GT
Z清零且N等于V
带符号数大于
1101
LE
Z置位或N不等于V
带符号数小于或等于
1110
AL
忽略
无条件执行
当处理器工作在ARM状态时,几乎所有的指令均根据CPSR中条件码的状态和指令的条件域有条件的执行。当指令的执行条件满足时,指令被执行,否则指令被忽略。
每一条ARM指令包含4位的条件码,位于指令的最高4位[31:28]。条件码共有16种,每种条件码可用两个字符表示,这两个字符可以添加在指令助记符的后面和指令同时使用。
在16种条件标志码中,只有15种可以使用,,第16种(1111)为系统保留,暂时不能使用。
指令流水线
指令的执行分3个阶段:
取指(fetch):从存储器中读入指令。
译码(decode):对指令及其用到的寄存器做解码。
执行(execute):从寄存器送出信息,执行移位运算和逻辑运算,并将最后结果写回寄存器。
取指
译码
执行
取指
译码
执行
取指
译码
执行
1
2
3
指令
ARM寻址方式
寻址方式分类
寻址方式是根据指令中给出的地址码字段来实现寻找真实操作数地址的方式。ARM处理器具有9种基本寻址方式。
; ;
; ;
; ;
; ;


立即寻址也叫立即数寻址,这是一种特殊的寻址方式,
操作数本身就在指令中给出,只要取出指令也就取到了操作
数。这个操作数被称为立即数,对应的寻址方式也就叫做立
即寻址。
ADD R0,R0,#3; R0←R0+3
MOV R1,#0x18; R1←0x18
0x55
R0
MOV R0,#0x18
程序存储
从代码中获得数据
例:MOV R1,#0x18
0x18

3嵌入式系统设计与开发 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数96
  • 收藏数0 收藏
  • 顶次数0
  • 上传人xxj16588
  • 文件大小0 KB
  • 时间2015-05-10
最近更新