常用的伪指令
1.字节定义伪指令
变量名 DB 一串用逗号间隔的单字节数
如:
N1 DB 12H,64,-1,3*3
DB 01010101B,’A’, ‘B’
DB 0A6H,’HELLO’
N2 DB ?,?,? ;与下条等价
N2 DB 3 DUP(?)
说明:
DB:Define Byte 的缩写,“定义字节”。
?:随机数, Dup ~ Duplicate(重复)
3 Dup(?):代表3个用逗号间隔的随机数
通知汇编程序把DB后跟的单字
节数,依次存入从变量(如N1)
开始的单元,负数用补码表示,
单引号中的字符翻译成ASCⅡ码。
2.字定义伪指令
变量名 DW 一串用逗号间隔的双字节数
如:
WNUM DW 1234H,12,’AB’, ‘C’
DW ?,?
DW 2 DUP(?)
3.双字定义伪指令
变量名 DD 一串用逗号间隔的4字节数
DNUM DD 12345678H
4.多字节定义伪指令
变量名 DF 一串用逗号间隔的6字节数
变量名 DQ 一串用逗号间隔的8字节数
变量名 DT 一串用逗号间隔的10字节数
5. 等值伪指令
符号常数 EQU 表达式
如:NUM EQU 33
功能: 定义符号常数NUM的值为33
6. 等号伪指令
符号常数=表达式
如: NUM = 33
功能:定义符号常数NUM的值为33
区别:
用EQU定义的符号常数,其值在后继语句中不能更改
用“=”定义的符号常数,其值在后继语句中可以重新定义
例如:
NUM EQU 33
MOV AL, NUM ;该指令与下条指令等价
MOV AL ,33