汇编器产生列表文件与目标文件。
.OBJ是包含了重定位代码的对象模块,输入到链接器中和绝对定位模块链接。
条件汇编包含一些条件控制指令,包括2大类,有$前缀没有$前缀的。
汇编器指令:
包含2大类:主要指令的和一般指令,指令可以用简写形式。
可以包含在文件名后面,也可
以$符号开头另起一行。
CASE使用大写和小写字母,即不转换字母大小写。如:
A51 SAMPLE.ASM CASE$CA
COND指定列表文件中输出条件编译语句(IF-ELSEIF-ENDIF 结构)。如:
A51 MYCODE.ASM COND$COND
DATE包含系统时间,或自己指定。如:
A51 SAMPLE.ASM DATE(05/19/04)$DA('19-05-04')
DEBUG指定在目标文件中生成调试信息。如:
A51 SAMPLE.ASM DEBUG$DB
EJECT插入一个换页
GEN在列表输出文件中包含所有的宏扩展。如:
A51 SAMPLE.ASM GEN$GE
INCDIR设置包含文件的路径。如:
A51 SAMPLE.ASM INCDIR(C:\PRJ\MYINC;C:\PRJ\INC)$INCDIR (C:\PRJ\INC)
INCLUDE用于包含文件。如:
$INCLUDE (MYFILE.INC)
LIST在列表文件中输出汇编源文件。如:
A51 SAMPLE.ASM LIST$LI
MACRO允许预处理器进行标准宏扩展。如:
A51 SAMPLE.ASM MACRO$MACRO
MOD51允许产生代码和定义传统8051寄存器。如:
MPL允许MP;宏扩展。如:AX51 MYFILE.A51 MOD51$M51
NOCASE将所有字母转换为大写。如:A51 SAMPLE.ASM MPL$MPL
NOCOND列表文件中不输出条件编译语句。如:A51 SAMPLE.ASM NOCASE$NOCA
NODEBUG 目标模块中不输出调试信息。如:A51 MYCODE.ASM NOCOND$NOCO
NOERRORPRINT 错误信息只输出到列表文件中而不输出到控制台。如:A51 SAMPLE.ASM NODEBUG$NODB
NOGEN 列表文件不进行宏扩展。如:A51 SAMPLE.ASM NOERRORPRINT$NOEP
A51 SAMPLE.ASM NOGEN$NOGE
NOLINES 行号不输出到目标文件中。如:
NOLIST 源文件不输出到列表文件中。如:A51 SAMPLE.ASM NOLINES$NOLN
NOMACRO 禁止标准宏扩展。如:A51 SAMPLE.ASM NOLIST$NOLI
NOMOD51 不使用8051预定义的SFR名称(此时必须包括自己定义的文件)。如:A51 SAMPLE.ASM NOMACRO$NOMACRO
$NOMOD51$INCLUDE (REG320.DEF)
A51 MYFILE.A51 NOMOD51$NOMO
NOMPL 禁止MPL宏扩展。如:
A51 SAMPLE.ASM NOMPL$NOMPL
NOOBJECT 禁止产生目标文件。如:
A51 SAMPLE.ASM NOOBJECT$NOOJ
NOPRINT 禁止产生列表文件(.lst)。如:
A51 SAMPLE.ASM NOPRINT$NOPR
NOREGISTERBANK 禁止保存寄存器空间。如:
A51 SAMPLE.ASM NOREGISTERBANK$NORB
NOSYMBOLS 列表文件中不输出符号表。如:
A51 SAMPLE.ASM NOSYMBOLS$NOSB
NOSYMLIST 禁止后续符号表输出在符号表中、如:
A51 SAMPLE.ASM NOSYMLIST$NOSL
NOXREF 禁止交叉引用表的输出。如:
A51 SAMPLE.ASM NOXREF$NOXR
OBJECT 允许产生目标文件并指定名字,默认使用文件名。如:
A51 SAMPLE.ASM OBJECT(C:\SAMPLE\SAMPLE.OBJ)$OJ(C:\SAMPLE\SAMPLE.OBJ)
PAGELENGTH 指定列表文件每页打印的行数,默认为60。如:
A51 SAMPLE.ASM PAGELENGTH (120)$PL (75)
PAGEWIDTH 指定列表文件每行打印的字符数。默认为120.如:
A51 SAMPLE.ASM PAGEWIDTH (78)$PW (79)
PRINT 允许输出列表文件并指定列表文件名。如:
A51 SAMPLE.ASM PRINT(C:\LIST\SAMPLE.LST)$PR(C:\LIST\SAMPLE.LST)
REGISTERBANK 允许保留寄存器空间。如 :
A51 SAMPLE.ASM REGISTERBANK(0,1,2,3)$RB(0,1,2,3)
RESET 复位符号。使其值为0。如:
A51 SAMPLE.ASM RESET(DEBUG_INFO)