ARM体系结构与编程_2_ARM指令集_0919.pdf
文本预览下载声明
ARM体系结构与编程
第4章ARM指令
TM 1
ARM指令
• ARM指令集
32位指令,效率高,代码密度低,所有指令可条件执行。
• Thumb指令集(-T )
16位指令,较高的代码密度,仍然保持ARM处理器大多
数性能上的优势,是ARM指令集的子集(重新编码),
仅有一条B指令可条件执行。
• ARM程序和Thumb程序可以相互调用,状态(ARM状态
和Thumb状态)切换的开销几乎为零。
• 范围:ARMv4T ARM920T S3C2410A
TM 2
ARM指令集
• 分支指令 • 多寄存器加载/存储指令
• 数据处理指令 • 信号量指令
• 乘法指令 • 异常产生指令
• 状态寄存器访问指令 • 协处理器指令
• 单寄存器加载/存储指令 • ARM伪指令
TM 3
一个简单的ARM汇编语言程序
AREA ARM_example, CODE, READONLY
; Name this block of code ARM_example
ENTRY ; Mark first instruction to execute
CODE32 ; Subsequent instructions are ARM
start MOV R0, #10 ; Set up parameters
MOV R1, #3
ADD R0, R0, R1 ; R0 = R0 + R1
END ; Mark end of file
TM 4
指令编码及条件域
• 典型示例:
TM 5
条件码表
操作码 条件助记符 标志 含义
0000 EQ Z=1 相等
0001 NE Z=0 不相等
0010 CS/HS C=1 无符号数大于或等于
0011 CC/LO C=0 无符号数小于
0100 MI N=1 负数
0101 PL N=0 正数或零
0110
显示全部