第4章 ARM程序设计基础 第4章 ARM程序设计基础 ARM编译器一般都支持汇编语言的程序设计和C/C++语言的程序设计,以及两者的混合 编程。本章介绍ARM程序设计的一些基本概念,如ARM汇编语言的伪指令、汇编语言的语 句格式和汇编语言的程序结构等,同时介绍C/C++和汇编语言的混合编程等问题。 本章的主要内容: - ARM编译器所支持的伪指令 - 汇编语言的语句格式 - 汇编语言的程序结构 - 相关的程序示例 4.1 ARM汇编器所支持的伪指令 在ARM汇编语言程序里,有一些特殊指令助记符,这些助记符与指令系统的助记符不 同,没有相对应的操作码,通常称这些特殊指令助记符为伪指令,他们所完成的操作称 为伪操作。伪指令在源程序中的作用是为完成汇编程序作各种准备工作的,这些伪指令 仅在汇编过程中起作用,一旦汇编结束,伪指令的使命就完成。 在ARM的汇编程序中,有如下几种伪指令:符号定义伪指令、数据定义伪指令、汇编 控制伪指令、宏指令以及其他伪指令。 4.1.1 符号定义(Symbol Definition)伪指令 符号定义伪指令用于定义ARM汇编程序中的变量、对变量赋值以及定义寄存器的别名 等操作。常见的符号定义伪指令有如下几种: — 用于定义全局变量的GBLA、GBLL和GBLS。 — 用于定义局部变量的LCLA、LCLL和LCLS。 — 用于对变量赋值的SETA、SETL、SETS。 — 为通用寄存器列表定义名称的RLIST。 1. GBLA、GBLL和GBLS 语法格式: GBLA(GBLL或GBLS) 全局变量名 GBLA、GBLL和GBLS伪指令用于定义一个ARM程序中的全局变量,并将其初始化。其……