- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[计算机]ARM伪指令
ARM伪指令
一、符号定义( Symbol Definition )伪指令 2
1、 GBLA、GBLL 和GBLS 2
2、 LCLA、LCLL 和LCLS 2
3、 SETA、SETL 和SETS 3
4 、 RLIST 3
二、数据定义( Data Definition )伪指令 3
1、 DCB 4
2、 DCW(或DCWU) 4
3、 DCD(或DCDU) 4
4、 DCFD(或DCFDU) 5
5、 DCFS(或DCFSU) 5
6、 DCQ(或DCQU) 5
7、 SPACE 5
8、 MAP 6
9、 FILED 6
三、汇编控制( Assembly Control )伪指令 6
1、 IF、ELSE、ENDIF 6
2、 WHILE、WEND 7
3、 MACRO、MEND 7
4、 MEXIT 8
四、其他常用的伪指令 8
1、 AREA 8
2、 ALIGN 9
3、 CODE16、CODE32 9
4、 ENTRY 10
5、 END 10
6、 EQU 10
7、 EXPORT(或GLOBAL) 10
8、 IMPORT 11
9、 EXTERN 11
10、 GET(或INCLUDE) 11
11、 INCBIN 12
12、 RN 12
13、 ROUT 12
五、以“。”开头的伪指令 13
1、.word 13
2、.balignl 13
在 ARM 汇编语言程序里,有一些特殊指令助记符,这些助记符与指令系统的助记符不同,没有相对应的操作码,通常称这些特殊指令助记符为伪指令,他们所完成的操作称为伪操作。伪指令在源程序中的作用是为完成汇编程序作各种准备工作的,这些伪指令仅在汇编过程中起作用,一旦汇编结束,伪指令的使命就完成。
在 ARM 的汇编程序中,有如下几种伪指令:符号定义伪指令、数据定义伪指令、汇编控制伪指令、宏指令以及其他伪指令。
一、符号定义( Symbol Definition )伪指令
符号定义伪指令用于定义 ARM 汇编程序中的变量、对变量赋值以及定义寄存器的别名等操作。
常见的符号定义伪指令有如下几种:
— 用于定义全局变量的 GBLA 、 GBLL 和 GBLS 。
— 用于定义局部变量的 LCLA 、 LCLL 和 LCLS 。
— 用于对变量赋值的 SETA 、 SETL 、 SETS 。
— 为通用寄存器列表定义名称的 RLIST 。
1、 GBLA、GBLL 和GBLS
语法格式:
GBLA ( GBLL 或 GBLS ) 全局变量名
GBLA 、 GBLL 和 GBLS 伪指令用于定义一个 ARM 程序中的全局变量,并将其初始化。其中:
GBLA 伪指令用于定义一个全局的数字变量,并初始化为 0 ;
GBLL 伪指令用于定义一个全局的逻辑变量,并初始化为 F (假);
GBLS 伪指令用于定义一个全局的字符串变量,并初始化为空;
由于以上三条伪指令用于定义全局变量,因此在整个程序范围内变量名必须唯一。
使用示例:
GBLA Test1 ;定义一个全局的数字变量,变量名为 Test1
Test1 SETA 0xaa ;将该变量赋值为 0xaa
GBLL Test2 ;定义一个全局的逻辑变量,变量名为 Test2
Test2 SETL {TRUE} ;将该变量赋值为真
GBLS Test3 ;定义一个全局的字符串变量,变量名为 Test3
Test3 SETS “ Testing ” ;将该变量赋值为 “ Testing ”
2、 LCLA、LCLL 和LCLS
语法格式:
LCLA ( LCLL 或 LCLS ) 局部变量名
LCLA 、 LCLL 和 LCLS 伪指令用于定义一个 ARM 程序中的局部变量,并将其初始化。其中:
LCLA 伪指令用于定义一个局部的数字变量,并初始化为 0 ;
LCLL 伪指令用于定义一个局部的逻辑变量,并初始化为 F (假);
LCLS 伪指令用于定义一个局部的字符串变量,并初始化为空;
以上三条伪指令用于声明局部变量,在其作用范围内变量名必须唯一。
使用示例:
您可能关注的文档
- [航空航天]名师指点高考备考策略 夯实基础知识 把握解题技巧.doc
- [航空航天]商业银行盈利模式探析.pdf
- [航空航天]基于公共控制信道超宽带认知无线电干扰抑制的研究.doc
- [航空航天]在住建系统推进作风建设专项活动动员会上的讲话.doc
- [航空航天]基于城市地铁建设的研究.doc
- [航空航天]外媒体看中国.ppt
- [航空航天]大学生创业压力源_控制感与倦怠关系研究.pdf
- [航空航天]广播电视客户服务中心建设_广播电视规范化运行管理实用手册.pdf
- [航空航天]建设海南西部农产品加工集散基地可行性分析.doc
- [航空航天]我国新发射风云三号卫星主要技术参数.doc
- CN111685375B 一种电子烟雾化芯及雾化器.pdf
- CN111709718B 基于人工智能的智能保理资产服务平台、方法和存储介质.pdf
- CN111611488B 基于人工智能的信息推荐方法、装置、电子设备.pdf
- CN111696028B 真实场景图像卡通化的处理方法、装置、计算机设备和存储介质.pdf
- CN111656644B 对电池充电的基于非线性伏安法的方法和实现该方法的快速充电系统.pdf
- CN111655285B 腺相关病毒的纯化方法.pdf
- 年加工110000m2钢化玻璃、中空玻璃建设项目环评报告书.docx
- 人教部编版三年级语文下册《习作:国宝大熊猫》示范公开课教学课件.pptx
- CN111757506B 窄带lte(nb-lte)的上行链路设计.pdf
- CN111755001A 一种基于人工智能的电网快速调度指挥系统及方法.pdf
文档评论(0)