基于ARM的嵌入式程序设计

基于ARM的嵌入式程序设计

ID:46194790

大小:1.16 MB

页数:50页

时间:2019-11-21

基于ARM的嵌入式程序设计_第1页
基于ARM的嵌入式程序设计_第2页
基于ARM的嵌入式程序设计_第3页
基于ARM的嵌入式程序设计_第4页
基于ARM的嵌入式程序设计_第5页
资源描述:

《基于ARM的嵌入式程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第5章基于ARM的嵌入式程序设计主要内容:ARM汇编语言程序设计C与汇编语言混合编程ARM汇编语言编程示例一、ARM汇编语言程序设计1、两种常用IDE简介2、ADS/SDT下的伪操作3、ARM汇编语言伪指令4、ARM汇编语言的文件和语句5、ARM汇编语言编程的几个问题6、ARM汇编语言编程示例1、两种常用IDE简介ADS/SDTIDE开发环境:它由ARM公司开发,使用了CodeWarrior公司的编译器;集成了GNU开发工具的IDE开发环境:它由GNU的汇编器as、交叉编译器gcc、和链接器ld等组成。2、ADS/SDT下的

2、伪操作ADS编译环境下的伪操作可分为以下几类:符号定义(SymbolDefinition)伪操作数据定义(DataDefinition)伪操作汇编控制(AssemblyControl)伪操作信息报告(Reporting)伪操作其他(Miscellaneous)伪操作伪操作语法格式作用GBLAGBLAVariable声明一个全局的算术变量,并将其初始化成0GBLLGBLLVariable声明一个全局的逻辑变量,初始化成{FALSE}GBLSGBLSVariable声明一个全局的字符串变量,初始化成空串“”LCLALCLAVar

3、iable声明一个局部的算术变量,并将其初始化成0LCLLLCLLVariable声明一个局部的逻辑变量,初始化成{FALSE}LCLSLCLSVariable声明一个局部的串变量,并将其初始化成空串“”SETASETAVariableexpr给一个全局或局部算术变量赋值SETLSETLVariableexpr给一个全局或局部逻辑变量赋值SETSSETSVariableexpr给一个全局或局部字符串变量赋值RLISTnameLIST{listofregisters}为一个通用寄存器列表定义名称CNnameCNexpr为一个协

4、处理器的寄存器定义名称CPnameCPexpr为一个协处理器定义名称DN/SNnameDN/SNexprDN/SN为一个双精度/单精度的VFP寄存器定义名称FNnameFNexpr为一个FPA浮点寄存器定义名称符号定义(SymbolDefinition)伪操作伪操作语法格式作用LTORGLTORG声明一个数据缓冲池(也称为文字池)的开始MAPMAPexpr{,base-register}定义一个结构化的内存表(StorageMap)的首地址FIELD{label}FIELDexpr定义一个结构化内存表中的数据域SPACE{l

5、abel}SPACEexpr分配一块连续内存单元,并用0初始化DCB{label}DCBexpr分配一段字节内存单元,并用expr初始化DCD/DCDU{label}DCDexpr分配一段字内存单元DCDO{label}DCDOexpr分配一段字对齐的字内存单元DCFD/DCFDU{label}DCFD{U}fpliteral为双精度的浮点数分配字对齐的内存单元DCFS/DCFSU{label}DCFS{U}fpliteral为单精度的浮点数分配字对齐的内存单元DCI{label}DCIexpr在ARM代码中分配一段字对齐的

6、内存单元;在Thumb代码中,分配一段半字对齐的半字内存单元DCQ/DCQU{label}DCQ{U}literal分配一段以双字(8个字节)为单位的内存DCW/DCWU{label}DCW{U}exprDCW用于分配一段半字对齐的半字内存单元数据定义(DataDefinition)伪操作伪操作语法格式作用IF,ELSE及ENDIFIFlogicalexpression…{ELSE…}ENDIF能够根据条件把一段源代码包括在汇编语言程序内或者将其排除在程序之外。WHILE及WENDWHILElogicalexpression

7、…WEND能够根据条件重复汇编相同的一段源代码。MACRO、MEND及MEXITMACRO{$label}macroname{$parameter{,$parameter}…}…;宏代码MENDMACRO标识宏定义的开始,MEND标识宏定义的结束。MERIT用于从宏中跳转出去。用MACRO和MEND定义的一段代码,称为宏。通过宏名来调用汇编控制(AssemblyControl)伪操作伪操作语法格式作用ASSERTASSERTlogicalexpr对汇编程序的第二遍扫描中,如果其中ASSERT中条件不成立,ASSERT伪操作将

8、报告该错误信息INFOINFOnum-expr,str-expr在汇编处理过程的第一遍扫描或者第二遍扫描时INFO伪操作报告诊断信息OPTOPTn通过OPT伪操作可以在源程序中设置列表选项TTLTTLtitle在列表文件的每一页的开头插入一个标题SUBTSUBTsubtitle在列表文件的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。