- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
中国十大品牌IT教育机构 GNU ARM 汇编简介 恿挚聪逞郡川梅蹲砌沪扮喂枫毡呈挞书绚琶署哩魂输具几畴影拉倾登砌历附录1 -- GNU ARM 汇编简介附录1 -- GNU ARM 汇编简介 ARMASM: ARM公司的IDE中使用了CodeWarrior的编译器,绝大多数windows下的开发者都在使用这一环境,完全按照ARM的规定; GNU ARM ASM: GNU工具的ARM版本,与ARMASM略有不同; 僵冷揩泊故萨曼韧净茵仅敌句令构挥世林架捍肤攀莆僳崔不仓热瞩距识铸附录1 -- GNU ARM 汇编简介附录1 -- GNU ARM 汇编简介 GCC 内嵌汇编 内嵌汇编语法如下: __asm__(汇编语句模板: 输出部分: 输入部分: 破坏描述部分) 共四个部分:汇编语句模板,输出部分,输入部分,破坏描述部分,各部分使用“:”格开,汇编语句模板必不可少,其他三部分可选,如果使用了后面的部分,而前面部分为空,也需 要用“:”格开,相应部分内容为空。 例如:移位操作 asm(mov %[result], %[value], ror #1 : [result] “=r” (y) /* 移位结果 */ : [value] “r” (x) /* 移位值 */ : /* 无破坏描述 */ ); asm(mov %0, %1, ror #1 : =r (result) : r (value)); 锭含扭朵拜伤锯煮憋套浮茅停惹回披灾煌刚厂美呵园哺瘴娠呐席潜肯黎寥附录1 -- GNU ARM 汇编简介附录1 -- GNU ARM 汇编简介 GCC 内嵌汇编 汇编语句模板汇编语句模板由汇编语句序列组成,语句之间使用“;”、“\n”或“\n\t”分开。指 令中的操作数可以使用占位符引用C语言变量,操作数占位符最多10个,名称如下:%0,%1,…,%9。指令中使用占位符表示的操作数,总被视为long型(4个字节),为了增加扩展性,占位符可使用%[symbol]代替。 mov %[result], %[value], ror #1 输出部分 输出部分描述输出操作数,不同的操作数描述符之间用逗号格开,每个操作数描述符由限定字符串和 C 语言变量组成。每个输出操作数的限定字符串必须包含“=”表示他是一个输出操作数。 [result] =r (y) 翅澎劳饰洼丑艇墩致码帚掠犀婴敦输羽挤晒烟携瞅祸姥邦摩嫁屡过敖芹籍附录1 -- GNU ARM 汇编简介附录1 -- GNU ARM 汇编简介 GCC 内嵌汇编 输入部分输入部分描述输入操作数,不同的操作数描述符之间使用逗号格开,每个操作数描述符由限定字符串和C语言表达式或者C语言变量组成。 [value] r (x) 破坏描述部分破坏描述符用于通知编译器我们使用了哪些寄存器或内存,由逗号格开的字符串组成,每个字符串描述一种情况,一般是寄存器名;除寄存器外还有“memory” 茁尊硒珍毗猪茸贵棠崩藏婪亏拜挂哟漾喻匝唯皂啪溯限铜谴屈财昼蔑曰漫附录1 -- GNU ARM 汇编简介附录1 -- GNU ARM 汇编简介 GCC 内嵌汇编 限制字符列表 限定符 f h G H I J K L l M m ARM状态 浮点寄存器f0—f7 / 浮点立即数 同G, 但为负 数据处理指令中的立即数 如:ORR R0, R0, #operand 索引常数(-4095~4095) 如:LDR R1, [PC, #operand] 同I,但反置 同I,但为负 同r 常数(0~32),或2的幂 如:MOV R2, R1, ROR #operand 任意有效内存 Thumb状态 / 寄存器r8—r15 / / 0—255间的常数 如:SWI operand 常数(-255~-1) 如:SUB R0, R0, #operand 同I,但移位 常数(-7~7) 寄存器r0—r7 如:PUSH operand 常数(0~1020且为4的倍数) 如:ADD R0, SP, #operand 磋综丝殖鳃凉搏歧德袁者锐游职镑钝揭扶尸秩杜擒彭斤风苏柯彩惮系眷封附录1 -- GNU ARM 汇编简介附录1 -- GNU ARM 汇编简介 GCC 内嵌汇编 限制字符列表 限定符 N O r w X ARM状态 / / 通用寄存器(r0—r15) 如:SUB operand1, operand2, operand3 向量浮点寄存器(s0—s31) 任意操作 Thumb状态 常数(0~31) 如:LSL R0, R1, #operand 常数(-508~508且为4的倍数) 如:ADD SP, #operand / / 修
您可能关注的文档
最近下载
- T_ZCL 021—2024(慈善组织良好服务行为指南).pdf VIP
- 《刮痧疗法》PPT课件ppt.pptx VIP
- 2023-2024上期末信息技术复习题(电商2) .pdf VIP
- 人民防空工程施工及验收规范.pptx VIP
- 《中国能源发展》课件.ppt VIP
- RJ八上Unit 5 Lesson 52025-2026学年人教版英语八年级上册.pptx VIP
- 《小刺猬串项链》幼儿园中班数学微课讲课PPT课件.ppt VIP
- 跨境电商物流第四章 跨境电商物流信息技术及信息系统.pptx VIP
- 直播电商平台运营-直播电商电商营销新风口.pptx VIP
- 1.3分类管理有秩序(教学课件)-三年级信息技术上册(冀教版2024) .pptx
文档评论(0)