2.伪指令

2.伪指令

伪指令是在机器汇编时供汇编程序识别和执行的指令,用来对汇编过程进行某种控制,或对符号、标号赋值,在汇编时不产生目标代码。

(1)ORG 16位地址或标号,指示该语句下一条指令目标程序的起始地址,将该语句下一条指令或数据的首字节放入伪指令说明的地址或标号ROM单元。ORG伪指令总是出现在每段源程序或数据块的开始。例如:

978-7-111-46831-8-Chapter04-1.jpg

上面这段程序说明标号START的首地址为1000H,该程序段从1000H开始存放。

(2)END 结束汇编,是汇编语言源程序的结束标志。一个源程序只能有一个END命令,且必须放在整个程序的最后。

(3)EQU 赋值,将左边的字符名称赋值。

格式:字符名称 EQU 数据或汇编符

“字符名称”被赋值后,它就可以在程序中作为一个数据或地址来使用,所赋的值可以是8位二进制数或地址,也可以是16位的二进制数或地址。例如:

978-7-111-46831-8-Chapter04-2.jpg

(4)DATA 可以在程序的开头或结尾,与“EQU”不同;该伪指令在程序中常用来定义数据地址。

格式:字符名称DATA表达式

(5)DB 定义字节,即把项或项表中的数存入由该指令地址起始的单元中。

格式:[标号:] DB 项或项表

“项或项表”中的数可以是一个8位二进制数或用逗号隔开的一串8位二进制数(二进制、十进制、十六进制或ASCII码),例如:

TAB:DB 45H,73,00110011B,‘A’

(6)DW 定义字。与DB类似,不同的是DW定义的是一个字(即2字节)。常用来定义16位地址(高8位在前,低8位在后)。

格式:[标号:] DW 项或项表

例如:

HETAB:DW 5012H

(7)DS从该伪指令标号起连续留字节空间,以备源程序执行过程中使用。

格式:[标号:] DS 表达式

例如:

SPC:DS 10H;从SPC地址开始预留16个存储单元。

(8)BIT位地址,用于给以符号形式的位地址赋值。

格式:字符名称 BIT 位地址

例如:

A1 BIT 07H

A2 BIT P1.0