嵌入式系统开发与应用第五章基于ARM的嵌入式程序设计5.1ARM汇编语言的伪操作、宏指令与伪指令5.2ARM汇编语言程序设计5.3卡嵌入式C语言程序设计基础5.4嵌入式C语言程序设计实例5.51嵌入式C语言程序设计技巧5.6C与汇编语言混合编程5.72基于EmbestIDEforARM环境的软件开发实例
第五章基于ARM的嵌入式程序设计 5.1 ARM汇编语言的伪操作、宏指令与伪指令 5.2 ARM汇编语言程序设计 5.3 嵌入式C语言程序设计基础 5.4 嵌入式C语言程序设计实例 5.5 嵌入式C语言程序设计技巧 5.6 C与汇编语言混合编程 5.7 基于Embest IDE for ARM 环境的软件开发 实例
嵌入式系统开发与应用5.1ARM汇编语言的伪操作、宏指令与伪指令5.1.1两种常见的ARM编译开发环境5.1.2ADS编译环境下的伪操作和宏指令5.1.3GNU编译环境下的伪操作和宏指令5.1.4ARM汇编语言的伪指令
5.1 ARM汇编语言的伪操作、宏指令与伪指令 5.1.1 两种常见的ARM编译开发环境 5.1.2 ADS编译环境下的伪操作和宏指令 5.1.3 GNU编译环境下的伪操作和宏指令 5.1.4 ARM汇编语言的伪指令
微入式系统开发与应用5.1.1两种常见的ARM编译开发环境ADS/SDTIDE开发环境:它由ARM公司开发,使用了CodeWarrior公司的编译器;集成了GNU开发工具的IDE开发环境:它由GNU的汇编器aS、交叉编译器gcc、和链接器1d等组成
5.1.1两种常见的ARM编译开发环境 ADS/SDT IDE开发环境:它由ARM公司 开发,使用了CodeWarrior公司的编译 器; 集成了GNU开发工具的IDE开发环境:: 它由GNU的汇编器as、交叉编译器gcc、 和链接器ld等组成
嵌入式系统开发与应用5.1.2ADS编译环境下的伪操作和宏指令ADS编译环境下的伪操作可分为以下几类:符号定义(SymbolDefinition)伪操作数据定义(DataDefinition)伪操作汇编控制(AssemblyControl)伪操作(信息报告(Reporting)伪操作其他(Miscellaneous)伪操作
5.1.2ADS编译环境下的伪操作和宏指令 ADS编译环境下的伪操作可分为以下 几类: 符号定义(Symbol Definition)伪操作 数据定义(Data Definition)伪操作 汇编控制(Assembly Control)伪操作 信息报告(Reporting)伪操作 其他(Miscellaneous)伪操作
嵌入式系统开发与应用符号定义伪操作作用伪操作语法格式GBLA声明一个全局的算术变量,并将其初始化成0。GBLA VariableGBLL声明一个全局的逻辑变量,并将其初始化成FALSE。GBLL Variable“”GBLSGBLS Variable声明一个全局的字符串变量,并将其初始化成空串LCLA声明一个局部的算术变量,并将其初始化成0。LCLA VariableLCLL声明一个局部的逻辑变量,并将其初始化成(FALSE)。LCLL VariableLCLS声明一个局部的串变量,并将其初始化成空串“”LCLS VariableSETASETA Variable expr给一个全局或局部算术变量赋值。SETLSETLVariable expr给一个全局或局部逻辑变量赋值。SETS给一个全局或局部字符串变量赋值SETSVariableexprRLIST为一个通用寄存器列表定义名称。nameLIST (list of registers)CN为一个协处理器的寄存器定义名称。name CN exprCP为一个协处理器定义名称。name CP exprDN/SNDN/SN为一个双精度/单精度的VFP寄存器定义名称。name DN/SN exprFN为一个FPA浮点寄存器定义名称。name FN expr
符号定义伪操作 伪操作 语法格式 作 用 GBLA GBLA Variable 声明一个全局的算术变量,并将其初始化成0。 GBLL GBLL Variable 声明一个全局的逻辑变量,并将其初始化成{FALSE}。 GBLS GBLS Variable 声明一个全局的字符串变量,并将其初始化成空串“”。 LCLA LCLA Variable 声明一个局部的算术变量,并将其初始化成0。 LCLL LCLL Variable 声明一个局部的逻辑变量,并将其初始化成{FALSE}。 LCLS LCLS Variable 声明一个局部的串变量,并将其初始化成空串“”。 SETA SETA Variable expr 给一个全局或局部算术变量赋值。 SETL SETL Variable expr 给一个全局或局部逻辑变量赋值。 SETS SETS Variable expr 给一个全局或局部字符串变量赋值。 RLIST name LIST{list of registers} 为一个通用寄存器列表定义名称。 CN name CN expr 为一个协处理器的寄存器定义名称。 CP name CP expr 为一个协处理器定义名称。 DN/SN name DN/SN expr DN/SN为一个双精度/单精度的VFP寄存器定义名称。 FN name FN expr 为一个FPA浮点寄存器定义名称