伪指令
伪指令是用于告诉汇编程序如何进行汇编的指令。这里指的是MDK下的伪指令与GNU下的微指令不一样。
一、常见伪指令
格式:area 段名 属性1,属性2……
属性:readonly:只读、readwrite、align[4] 4字节对齐、code32 4字节、code16
一个完整的汇编程序至少要有一个entry,一个文件中最多有一个entry,也可以没有,如果有多个entry,由链接器指定哪个是程序的入口点
【import】通知编译器,要使用的标号在其他的源文件中定义,相当于c语言中的extern
GBLA伪操作声明一个全局的算术变量,并将其初始化为0。
GBLL伪操作声明一个全局的逻辑变量,并将其初始化成{FALSE}。
GBLS伪操作声明一个全局的串变量,并将其初始化为空串""。
GBLA伪操作声明一个局部的算术变量,并将其初始化为0。
GBLL伪操作声明一个局部的逻辑变量,并将其初始化成{FALSE}。
GBLS伪操作声明一个局部的串变量,并将其初始化为空串""。
seta 、setl 、sets
设置变量具体值
示例代码如下:
gbla test1
test3 sets "testing"
dcb 、dcw 、dcd 、dcfd 、dcfs 、dcq 、space 、map filed
dcb 类似于定义一个char数组,用于分配一片连续的字节存储单元,
space 类似于mallocfen分配一片连续的内存区域并初始化为0
三、控制伪指令