ARM汇编程序设计
汇编语言的程序格式
以段(section)为单位组织源文件
- 分为代码段,数据段,段之间相互独立
- 一个ARM汇编程序至少需要一个代码段,使用AREA伪操作标识一个段开始、段的名字和属性
- 使用伪操作ENTRY标识程序执行的第一条指令
- 使用伪操作END标识汇编程序结束
- 标号
- 注释
符号与标号
符号的定义
- 在ARM汇编中,使用符号来表示地址、变量和数字常量
- 当用符号来标识地址时,又称为标号
符号的命名
- 由字符、数字和下划线组成,开头不能使用数字,局部标号除外
- 符号在其作用域内必须唯一
- 不能与系统内部或系统预定义的符号同名
- 不能与指令助记符、伪指令同名
伪操作
什么是伪操作?
- ARM汇编语言中一些特殊的指令助记符
- 主要目的是对汇编源程序指令作各种处理、组装成一个完整的汇编程序
- 伪操作是为汇编器服务的,类似于C语言中的宏,为编译器服务。预处理之后,宏消失;汇编过后,伪操作消失
- 不同的编译环境,伪操作格式可能不一样
常用伪操作
- 符号定义伪操作:GBLA、LCLA...
- 数据定义伪操作:DCD、DCB、SPACE