Higashi Q83831295 1 ARM 汇编语言 伪操作: 伪操作又称为伪指令,它不像机器指令那样是在程序运行期间由计算机来执行的,它是在汇编程序对源程序汇编期间由汇编程序处理的操作,它们可以完成如数据定义、分配存储区、指示程序结束等功能。 宏指令是一段独立的程序代码,它通过伪操作来定义。宏通过宏名来调用,并可以设置相应的参数。宏定义本身不会产生代码,只是在调用它时把宏体插入到源程序中。 a、符号定义伪操作 伪操作 作用 GBLA 声明全局算术变量 GBLL 声明全局逻辑变量 GBLS 声明全局字符串变量 LCLA 声明局部算术变量 LCLL 声明局部逻辑变量 LCLS 声明局部字符串变量 SETA 给全局或局部算术变量赋值 SETL 给全局或局部逻辑变量赋值 SETS 给全局或局部字符串变量赋值 RLIST 为通用寄存器列表定义名称 CN 为协处理器的寄存器定义名称 CP 为协处理器定义名称 DN/SN 为双精度/单精度VFP 的寄存器定义名称 FN 为FPA 浮点寄存器定义名称 ①GBLA、GBLL、GBLS 用于声明一个 ARM 程序中的全局变量,并将其初始化。 GBLA 声明一个全局的算术变量,并将其初始化为0; GBLL 声明一个全局的逻辑变量,并将其初始化为{FALSE}; GBLS 声明一个全局的字符串变量,并将其初始化为空字符串””。 句法: variable GBLX 是三种伪操作之一,variable 是所说明的全局变量的名称,在其作用范围唯一。 用法: 如果用这些伪操作重新声明已经声明过的变量,则变量的值将被初始化成后一次声明语句中的值。全局变量的作用范围为包含该变量的源程序。 例子: GLBA arithmetic; 声明全局算术变量arithmetic arithmetic SETA 0xff; 向该变量赋值 Higashi Q83831295 2 SPACE arithmetic; 引用该变量 GBLL logical; 声明全局逻辑变量logical logical SETL {TRUE}; 向该变量赋值 ②LCLA、LCLL、LCLS 用于声明一个 ARM 程序中的局部变量,并将其初始化。 LCLA 声明一个局部的算术变量,并将其初始化为 0; LCLL 声明一个局部的逻辑变量,并将其初始化为{FALSE}; LCLS 声明一个局部的字符串变量,并将其初始化为空字符串””。 句法: variable … 用法: 如果用这些伪操作重新声明已经声明过的变量,则变量的值将被初始化成后一次声明语句中的值。局部变量的作用范围为包含该局部变量的宏代码的一个实例。 例子: MACRO; 声明一个宏 $label message $a...