- 1、本文档共46页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
copy4words LDMIAR2!,RegList STMIAR3!,RegList SUBSR1,R1,#1 BNEcopy4wordscopyWords ANDSR0,R0,#3 BEQstopcopyWord LDRR4,[R2],#4 STRR4,[R3],#4 SUBSR0,R0,#1 BNEcopyWordstop Bstop END7.4ARM汇编语言程序设计实例解析 例7-4初始化ARM处理器各模式下的堆栈指针SP(R13)。设计思路:通过MRS/MSR指令,采用“读取-修改-写回”三个步骤修改CPSR模式控制字,使处理器进入相应的模式,在各模式下修改其堆栈指针。7.4ARM汇编语言程序设计实例解析 如何设置相应模式下的SP MRS R0,CPSR ;读取当前CPSR BIC R0,R0,#0x1F ;清除模式位 ORR R1,R0,#0x1B ;未定义模式控制字 MSR CPSR_c,R1 LDR SP,=0xC7FF2007.4ARM汇编语言程序设计实例解析 *TM*ARM嵌入式系统结构与编程*TMARM嵌入式系统结构与编程第7章 汇编语言程序设计本章主要介绍ARM汇编语言程序设计规范,以及在汇编语言程序设计中所要注意的问题,最后以大量的实例说明汇编语言程序设计方法。内容提要7.1 ARM编译环境下汇编语句7.2 GNU环境下汇编语句与编译说明7.3 ARM汇编语言程序设计规范7.4 ARM汇编语言程序设计实例解析 7.1ARM编译环境下汇编语句ARM编译环境下进行汇编语言程序设计的格式汇编语句中的符号规则7.1.1ARM编译环境下汇编语句格式ADS环境下ARM汇编语句格式如下:{symbol}{instruction} {;comment}{symbol}{directive} {;comment}{symbol}{pseudo-instruction} {;comment}注意事项:在ARM编译环境下ARM汇编语句不能从一行的顶格书写,在一行语句中,指令的前面必须有空格或TAB符号。7.1.2ARM编译环境下汇编语句中符号规则符号用来表示地址(一般为程序标号)、常量和变量。当标号以数字开头时称为局部标号,只在当前段有效。1.符号命名规则(1)符号由大小写字母、数字、下划线组成,且符号是区分大小写的。(2)局部标号可以用数字开头,其他的标号不能。(3)符号在其作用范围内必须是唯一的。(4)程序中的符号不要与指令助记符或者伪操作同名。2.常量:包括数字常量、字符常量、字符串常量和布尔常量(1)十进制数,如535、246。(2)十六进制数,如0x645、0xff00。(3)n_XXX,n表示n进制数,从2~9,XXX是具体的数字。例如:8_3777(4)字符常量用一对单引号括起来,包括一个单字符或者标准C中的转义字符。例如‘A’、‘\n’。(5)字符串常量由一对双引号以及由它括住的一组字符串组成,包括标准C中的转义字符。 如果需要使用双引号”或字符$,则必须用””和$$代替。(6)布尔常量在表达式中写为{TRUE}和{FALSE}7.1.2ARM编译环境下汇编语句中符号规则3.变量(1)数字变量 取值范围为0~232-1或-231~231-1;汇编器对关系运算符采用无符号数方式处理,这意味着0-1是{FALSE}。(2)字符串变量 字符串变量由包含在双引号内的一系列字符组成,最大长度为512字节,最小长度为0。当字符串中包含$(或”)时,用$$(或””)表示一个$(或”)。(3)逻辑变量 取值范围为{TRUE}和{FALSE}7.1.2ARM编译环境下汇编语句中符号规则3.变量变量代换规则:程序中的变量可通过代换操作取得一个常量对于数字变量,如果该变量前有$字符,在汇编器编译时将该数字变量的数字转换成十六进制的串,然后用该十六进制串取代$字符后的变量。对于逻辑变量,如果该变量前有$字符,在汇编器编译时将该逻辑变量替换成它的取值(T或F)。使用“.”来表示变量名的结束。7.1.2ARM编译环境下汇编语句中符号规则3.变量例:变量代换 GBLSstring1 GBLSstring2 GBLSD GBLANUM GBLLISIS SETL{TRUE} NUM SETA0D SETSARM9TD
您可能关注的文档
- 《客户关系管理》所有章节课件_邵兵家主编.ppt
- ARM课件第1章 绪论(1).ppt
- ARM课件第1章 绪论(2).ppt
- ARM课件第2章 ARM技术与ARM体系结构(1).ppt
- ARM课件第3章 ARM指令集寻址方式.ppt
- ARM课件第4章 ARM指令集系统(2).ppt
- ARM课件第5章 Thumb指令.ppt
- ARM课件第6章 ARM汇编伪指令与伪操作(1).ppt
- ARM课件第6章 ARM汇编伪指令与伪操作(1简化).ppt
- ARM课件第6章 ARM汇编伪指令与伪操作(2).ppt
- 北师大版小学数学三年级上册《寄书》教学设计.docx
- 统编版(部编版)语文二年级上册《雪孩子》教学设计.docx
- 统编版(部编版)语文二年级上册《八角楼上》教学设计.docx
- 北师大版小学数学三年级上册《长方形周长》教学设计.docx
- 北师大版小学数学三年级上册《丰收了》教学设计.docx
- 统编版(部编版)语文二年级上册《夜宿山寺》教学设计.docx
- 统编版(部编版)语文二年级上册《风娃娃》教学设计.docx
- 统编版(部编版)语文二年级上册《朱德的扁担》教学设计.docx
- 统编版(部编版)语文二年级上册《难忘的泼水节》教学设计.docx
- 统编版(部编版)语文二年级上册《纸船和风筝》教学设计.docx
最近下载
- 米LED路灯灯杆检验报告.pdf VIP
- 临床诊疗指南肾脏病学分册_全文.pdf
- 中小学校园防疫科普讲义中小学防控诺如病毒主题班会课件.pptx VIP
- 安永-中国房地产行业2023年业绩概览及新质态下房地产行业发展新趋势.pdf VIP
- Nikon 尼康微型单电相机 Z系列Z 6 参考手册(完整说明书)Z7Z6RM_(Sc)05.pdf
- 2024年义务教育新课标新教材培训学习PPT课件:小学语文新教材内容整体变化解读.pptx
- 上海市高一信息技术上学期期中试题.docx
- 支架和钢管柱贝雷梁现浇简支箱梁施工安全质量控制要点.pptx VIP
- 名著导读《朝花夕拾》课件(共47张ppt).pptx VIP
- 商用车行业专题:全球客车潜力可观,中国车企大有可为.docx VIP
文档评论(0)