一、匯編程序功能

匯編指令與機(jī)器碼指令有一一對應(yīng)的關(guān)系。
匯編程序是一種翻譯程序,將源程序翻譯成目標(biāo)程序。
二、匯編程序的匯編過程
匯編有兩種方法:手工匯編、機(jī)器匯編。
1、手工匯編:
第一次匯編:確定地址,翻譯成各條機(jī)器碼,字符標(biāo)號原樣寫出;
第二次匯編:標(biāo)號代真,將字符標(biāo)號用所計(jì)算出的具體地址值或偏移量代換。
源程序 地址 目標(biāo)程序
第一次匯編 第二次匯編
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、機(jī)器匯編
兩次掃描過程。
第一次掃描:檢查語法錯誤,確定符號名字;
建立使用的全部符號名字表;
每一符號名字后跟一對應(yīng)值(地址或數(shù))。
第二次掃描:是在第一次掃描基礎(chǔ)上,將符號地址轉(zhuǎn)換成真地址(代真);
利用操作碼表將助記符轉(zhuǎn)換成相應(yīng)的目標(biāo)碼。