第3章 ARM微处理器的指令系统ARM 应用系统开发详解──基于 S3C4510B 的系统设计 1 第 3 章 ARM 微处理器的指令系统 本章介绍 ARM 指令集、Thumb 指令集,以及各类指令对应的寻址方式,通过对本章的阅读,希 望读者能了解 ARM 微处理器所支持的指令集及具体的使用方法。 本章的主要内容有: - ARM 指令集、Thumb 指令集概述。 - ARM 指令集的分类与具体应用。 - Thumb 指令集简介及应用场合。 3.1 ARM 微处理器的指令集概述 3.1.1 ARM 微处理器的指令的分类与格式 ARM微处理器的指令集是加载/存储型的,也即指令集仅能处理寄存器中的数据,而且处理结果 都要放回寄存器中,而对系统存储器的访问则需要通过专门的加载/存储指令来完成。 ARM微处理器的指令集可以分为跳转指令、数据处理指令、程序状态寄存器(PSR)处理指令、 加载/存储指令、协处理器指令和异常产生指令六大类,具体的指令及功能如表3-1所示(表中指令 为基本ARM指令,不包括派生的ARM指令)。 表 3-1 助记符 ADC ADD AND B BIC BL BLX BX CDP CMN CMP EOR LDC LDM LDR MCR MLA MOV MRC MRS MSR MUL MLA 带进位加法指令 加法指令 逻辑与指令 跳转指令 位清零指令 带返回的跳转指令 带返回和状态切换的跳转指令 带状态切换的跳转指令 协处理器数据操作指令 比较反值指令 比较指令 异或指令 存储器到协处理器的数据传输指令 加载多个寄存器指令 存储器到寄存器的数据传输指令 从 ARM 寄存器到协处理器寄存器的数据传输指令 乘加运算指令 数据传送指令 从协处理器寄存器到 ARM 寄存器的数据传输指令 传送 CPSR 或 SPSR 的内容到通用寄存器指令 传送通用寄存器到 CPSR 或 SPSR 的指令 32……