news 2026/5/19 6:11:26

ARM汇编基础

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
ARM汇编基础

GNU汇编语法

GNU 汇编语法适用于所有的架构,并不是 ARM 独享的, GNU 汇编由一系列的语句组成,
每行一条语句,每条语句有三个可选部分,如下:

label: instruction @ comment

label 即标号,表示地址位置,有些指令前面可能会有标号,这样就可以通过这个标号得到
指令的地址,标号也可以用来表示数据地址。注意 label 后面的“:”,任何以“:”结尾的标识
符都会被识别为一个标号。
instruction 即指令,也就是汇编指令或伪指令。
@符号,表示后面的是注释,就跟 C 语言里面的“/”和“/”一样,其实在 GNU 汇编文
件中我们也可以使用“/”和“/”来注释。
comment 就是注释内容。
比如如下代码:

add:MOVS R0,#0X12@设置 R0=0X12

上面代码中“add:”就是标号,“MOVS R0,#0X12”就是指令,最后的“@设置 R0=0X12”就
是注释


汇编程序的默认入口标号是_start,不过我们也可以在链接脚本中使用 ENTRY 来指明其它
的入口点,下面的代码就是使用_start 作为入口标号:

.global _start _start:ldr r0,=0x12@r0=0x12

上面代码中.global 是伪操作,表示_start 是一个全局标号,类似 C 语言里面的全局变量一
样,常见的伪操作有:

.byte 定义单字节数据,比如.byte0x12.short定义双字节数据,比如.short0x1234.long定义一个4字节数据,比如.long0x12345678.equ 赋值语句,格式为:.equ 变量名,表达式,比如.equ num,0x12,表示 num=0x12.align 数据字节对齐,比如:.align4表示4字节对齐。.end 表示源文件结束。.global 定义一个全局符号,格式为:.global symbol,比如:.global _start

GNU 汇编同样也支持函数,函数格式如下:

函数名:函数体 返回语句

GNU 汇编函数返回语句不是必须的,如下代码就是用汇编写的 Cortex-A7 中断服务函数:

/* 未定义中断 */Undefined_Handler:ldr r0,=Undefined_Handler bx r0/* SVC 中断 */SVC_Handler:ldr r0,=SVC_Handler bx r0

“Undefined_Handler”就是函数名,“ldr r0, =Undefined_Handler”是函数体,“bx r0”是函数
返回语句,“bx”指令是返回指令,函数返回语句不是必须的。







版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/19 6:10:19

7款AI工具助力学术论文高效撰写的详细解析

工具核心特点速览 工具名称 核心优势 适用场景 数据支撑 aibiye 全流程覆盖降重优化 从开题到答辩的一站式需求 支持20万字长文逻辑连贯 aicheck 院校规范适配模板化输出 国内本硕博论文框架搭建 覆盖90%高校格式要求 秒篇 3分钟文献综述生成 紧急补文献章节 知…

作者头像 李华
网站建设 2026/5/7 7:40:08

西门子S7-1200 PLC间TCP以太网通讯实践

两个西门子S7-1200PLC之间的TCP以太网通讯 西门子S7_1200两个CPU之间的以太网通讯程序,一个做主站一个做从站,可实现两个CPU之间的数据发送和读取,外加两个西门子KTP1200 12寸的触摸屏, 在自动化控制领域,PLC之间的通讯…

作者头像 李华
网站建设 2026/5/14 16:52:57

大公司的采购流程是怎样的?一文讲清采购七大流程

谢邀。大公司的采购流程是怎样的?很多人对大公司采购的第一反应就是:慢、复杂、官僚。可能心里还在想:不就是买点东西吗?怎么要跑这么多流程,审批盖章、来回催单,搞得业务部门和采购都累坏了?其…

作者头像 李华
网站建设 2026/5/1 5:23:21

2026年1月21日人工智能早间新闻

各位读者,早上好。今天是2026年1月21日,星期三。欢迎收看人工智能早间新闻。世界经济论坛2026年年会进入第三天,昨日,大会聚焦“绩效”与“能源”两大核心,对人工智能的全球竞争格局进行了一次现实的把脉。与此同时&am…

作者头像 李华
网站建设 2026/5/12 22:19:06

鑫成誉-小黄鸭电动车小程序界面设计

项目背景2025 年,共享两轮车进入“3.0 时代”:政策对电池安全、车辆秩序、数据合规提出更高要求;用户侧则希望“随借随还、一眼找到、一秒换电”。小黄鸭出行需要在 6 个月内完成一次品牌升级,既要守住“亲民、可爱”的视觉资产&a…

作者头像 李华
网站建设 2026/5/15 20:58:02

AI Agent框架宝典:11个顶级框架对比与实战指南,小白也能上手

本文全面介绍了11个最佳AI Agent框架,包括LangChain、AutoGen、CrewAI等,详细分析了各框架的特性、优势、劣势及应用场景。文章对比了开源与商业解决方案,提供了评估框架的标准和选择建议,并探讨了AI Agent领域的发展趋势。这些框…

作者头像 李华