- 1、本文档共36页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
4.1 ARM汇编语言的伪操作、宏指令与伪指令 伪操作、宏指令一般和编译程序有关。因此ARM汇编语言的伪操作、宏指令在不同的编译环境下有不同的编写形式和规则。 目前常用的ARM编译开发环境有两种 4.1.1 GNU编译环境下的ARM伪操作 常量编译控制伪操作 1 .byte 用于分配一段字节内存单元,并用伪操作中的expr初始化。 语法格式 . byte expr{,expr}… . byte 21,48,89,0x13,0xff 4.1.1 GNU编译环境下的ARM伪操作 常量编译控制伪操作 1 .word .long .int 用于分配一段字内存单元,并用伪操作中的expr初始化。 语法格式 . word expr{,expr}… . word 21,0x1,10033,0x77ff2255 4.1.1 GNU编译环境下的ARM伪操作 Src: . long 1,2,3,4,5,6 /*定义一个数据区,以src为起始地址*/ /*每个数据均分配4B空间*/ 4.1.1 GNU编译环境下的ARM伪操作 字符编译控制伪操作 1 .equ及.set .equ伪操作用于为数字常量、基于寄存器的值和程序中的标号定义一个字符名称。.set作用同 .equ。 语法格式 .equ symbol,expr .equ x, 45 /* 定义变量x,并赋值为45*/ 2 .global,.globl, .extern 声明一个符号可以被其他文件引用。相当于声明了一个全局变量,语法格式 .global symbol 其中:symbol为声明的符号的名称,它是区分大小写的。 示例: .global _start .extern Main 汇编程序代码控制伪操作 1 .text .text伪操作将操作符开始的代码编译到代码段或代码段子段(subsection)。 语法格式 .text {subsection} 示例 .text 2 .data 作用:.data伪操作将操作符开始的数据编译到数据段或数据段 子(subsection)。 语法格式 .data {subsection} 示例 .data src: .long 1,2,3,4,5 /*定义了一个数据区,以src为起始地址*/ dst: .long 0,0,0,0,0 /*定义了一个数据区,以src为起始地址*/ 3 .code 16|32 作用:.code伪操作用于选择当前汇编指令的指令 集。参数16选择Thumb指令集,参数32选择ARM指令集。 语法格式 .code 16 .code 32 4 .end 作用:标记汇编文件的结束行,即标号后的代码不作处理。 语法格式 .end 5 .include 作用: .include伪操作用于将一个源文件包含到当前源文件中。一般是将该源文件用到的库文件包含到本源文件中。 语法格式 .include “filename” #include 44blib.h 4.1.2 宏编译控制伪操作 .macro伪操作标识宏定义的开始,.endm标识宏定义的结束。用.macro及.endm定义一段代码,称为宏定义体,这样在程序中就可以通过宏指令多次调用该代码段。 语法格式 .macro macroname{parameter…} … /*代码段*/ .endm 其中,宏参数的定义可以使用逗号分隔,宏字符参数可以使用斜线“\字符”直接使用。 .macro HANDLER Label /*宏名为HANDLER,有一个参数Label*/ sub sp,sp,#4 stmfd sp!,{r0} ldr r0,=\ Label ldr r0,[r0] str r0,[sp,#4] ldmfd sp!,{r0,pc} .endm /*宏定义体结束*/ HandlerRTC: sub sp,sp,#4 stmfd sp!,{r0} ldr r0, =HandleRTC ldr r0,[r0] str r0,[sp,#4] ldmfd sp!,{r0,pc} 4.1.3 ARM伪指令 2. LDR大范围的地址读取伪指令 寄存器赋值时经常使用 NOP空操作伪指令 使用格式: n
您可能关注的文档
- 单片机C语言程序设计实训 100 例.doc
- 单片机C语言程序设计实训100例.pdf
- 单片机C语言学习(非常通俗易懂!).pdf
- 单片机——程序的基本结构.pptx
- 单片机的汇编语言与程序设计.ppt
- 单片机第3章-一些例子-汇编语言程序设计.ppt
- 单片机仿真软件PROTEUS使用入门.ppt
- 单片机复习试题汇总(有答案).doc
- 单片机汇编程序(算术逻辑运算).ppt
- 单片机汇编语言的循环程序设计.ppt
- 1医院消毒供应三项行业标准修订版的解读.pptx
- 3新规范下CSSD的风险管理.ppt
- 埃博拉病毒初症状非特异性可能包括发烧发冷肌痛不适ebolafacts.pdf
- 内容讲稿文案william makepeace vanity-fair 007 chapter 6 vauxhallVanity Fair 6章Vauxhall.pdf
- 一带你读完黄老师笔记.pdf
- 踩踏欺凌防暴恐防中毒溺水火灾车祸地震反校园欺临源.pdf
- 鹏老司机遗传伴性与图谱.pdf
- 现代物体识别挑战课程lecpascal.pdf
- 北师大版六级上册重点单词及句型.pdf
- 单元野生动物保护学习语言m2 u4 period 4 learning about languageM2U4时期.pdf
最近下载
- 电力设备公司产品制造车间生产定额计件工资实施办法.docx VIP
- 2023国有企业“三重一大”决策制度实施细则办法.pdf VIP
- 安徽大学《地球科学概论》课件-第4讲大气圈、冰冻圈、岩石圈.pptx VIP
- 国家开放大学(电大)《农业生态基础.》2020年09月春季期末考试真题及答案(试卷代号2794).pdf VIP
- 餐饮行业员工职业规划.pptx VIP
- 《数学数学期望》课件.ppt VIP
- 肾病内科专业疾病临床诊疗规范2025版.docx VIP
- 质量信得过班组培训课件.pptx VIP
- 《高级英语FacetoFacewithHurricaneCamille》-精选课件(公开).ppt VIP
- 高中化学课件:芳环上的亲核取代反应.pptx VIP
文档评论(0)