第二十课:汇编语言及汇编过程
一、汇编程序功能
汇编指令与机器码指令有一一对应的关系。
汇编程序是一种翻译程序,将源程序翻译成目标程序。
二、汇编程序的汇编过程
汇编有两种方法:手工汇编、机器汇编。
1、手工汇编:
第一次汇编:确定地址,翻译成各条机器码,字符标号原样写出;
第二次汇编:标号代真,将字符标号用所计算出的具体地址值或偏移量代换。
源程序 地址 目标程序
第一次汇编 第二次汇编
ORG 1000H
START: MOV R0,BUFFER-1 1000 A82F A82F
MOV R2,#00H 1002 7A00 7A00
MOV A,@R0 1004 E6 E6
MOV R3,A 1005 FB FB
INC R3 1006 0B 0B
SJMP NEXT 1007 80NEXT 8005
LOOP; INC R0 1009 08 08
CJNE @R0,#44H,NEXT 100A B644NEXT B64401
INC R2 100D 0A 0A
NEXT: DJNZ R3,LOOP 100E DBLOOP DBF9
MOV RESULT,R2 1010 8A2A 8A2A
SJMP $ 1012 80FE 80FE
BUFFER DATA 30H
RESULT DATA 2AH
END
2、机器汇编
两次扫描过程。
第一次扫描:检查语法错误,确定符号名字;
建立使用的全部符号名字表;
每一符号名字后跟一对应值(地址或数)。
第二次扫描:是在第一次扫描基础上,将符号地址转换成真地址(代真);
利用操作码表将助记符转换成相应的目标码。