免费嵌入式复习.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
免费嵌入式复习

第7章 汇编语言程序设计 内容提要 7.1 ARM编译环境下汇编语句 7.2 GNU环境下汇编语句与编译说明 7.3 ARM汇编语言程序设计规范 7.4 ARM汇编语言程序设计实例解析 7. 1 ARM编译环境下汇编语句 ARM编译环境下进行汇编语言程序设计的格式 汇编语句中的符号规则 ARM编译环境下汇编语句格式 ADS环境下ARM汇编语句格式如下: {symbol} {instruction} {;comment} {symbol} {directive} {;comment} {symbol}{ pseudo-instruction} {;comment} ARM编译环境下汇编语句格式 ARM编译环境下汇编语句中符号规则 1.符号命名规则 (1)符号由大小写字母、数字、下划线组成,且符号 是区分大小写的。 (2)局部标号可以用数字开头,其他的标号不能。 (3)符号在其作用范围内必须是唯一的。 (4)程序中的符号不要与指令助记符或者汇编命令同 名。 ARM编译环境下汇编语句格式 2.常量 (1)十进制数,如535、246。 (2)十六进制数,如0x645、0xff00。 (3)n_XXX, n表示n进制数,从2~9,XXX是具体的数字。例如:8_3777 (4)字符常量用一对单引号括起来,包括一个单字符或者标准C中的转义字符。例如‘A’、‘\n’。 (5)字符串常量由一对双引号以及由它括住的一组字符串组成,包括标准C中的转义字符。 如果需要使用双引号”或字符$,则必须用””和$$代替。 ARM编译环境下汇编语句格式 3.变量 (1)数字变量 (2)字符串变量 (3)逻辑变量 ARM编译环境下汇编语句格式 4. 字符串表达式操作 (1)取符串的长度LEN 语法格式: :LEN: A 功能说明:返回字符串A的长度。 ARM编译环境下汇编语句格式 (2)CHR 语法格式: :CHR: A 功能说明:将A(A为某一字符的ASCII值)转换为单个字符。 ARM编译环境下汇编语句格式 (3)STR 语法格式: :STR: A 功能说明:将A(A为数字量或逻辑表达式)转换成字符串。 ARM编译环境下汇编语句格式 (4)LEFT 语法格式: A :LEFT: B 功能说明:返回字符串A最左端B(B为返回长度)长度的字符串。 ARM编译环境下汇编语句格式 (5)RIGHT 返回一个字符串最右端一定长度的字符串: A :RIGHT: B 功能说明:返回字符串A最右端B(B为返回长度)长度的字符串。 ARM编译环境下汇编语句格式 (6)CC 用于连接两个字符串,B串接到A串后面: A :CC: B ARM编译环境下汇编语句格式 5.地址标号 1)PC相关标号 2)寄存器相关标号 3)绝对地址 ARM编译环境下汇编语句格式 6.局部标号 局部标号的语法格式如下: n {routname} 被引用的局部标号语法规则是: % {F∣B} {A∣T} n {routname} 其中: n是局部标号的数字号。 routname是当前局部范围的名称。 %表示引用操作。 F指示汇编器只向前搜索。 B指示汇编器只向后搜索。 A指示汇编器搜索宏的所有嵌套层次。 T指示汇编器搜索宏的当前层次。 7. 2 GNU环境下汇编语句与编译说明 GNU环境下ARM汇编语言程序设计主要是面对在ARM平台上进行嵌入式LINUX的开发。 GNU标准中提供了支持ARM汇编语言的汇编器as(arm-elf-as)、交叉编译器gcc (arm-elf-gcc)和链接器ld(arm-elf-ld)。 7.2.1 GNU环境下ARM汇编语句格式 GNU环境下ARM汇编语言语句格式如下: {label :} {instruction} {@comment} {label :} {directive} {@comment} {label :} { pseudo-instruction} {@comment} 7.2.2 GNU环境下ARM汇编程序编译 (1) 预处理 GNU汇编器as的内部预处理包括:移除多余的间隔符代码中的所有注释,并将字符常量转换为数字值。它不作宏处理和文件包含处理,但这些事情可以交由gcc编译器去做,文件包含可以用.include命令来实现。 7.2.2 GNU环境下ARM汇编程序编译 (2) 注释 GNU ARM Assembly可识别的注释方式有:C风格多行注释符/* ... */或GNU单行注释符“@”或“#”。 (3) 符号 与C语言基本一致,符号名由字母、数字以及_、和.组成,大小写敏感。 7.2.2 GNU环境下AR

文档评论(0)

3471161553 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档