III. Chương trình ngođn ngữ Assembly cụa 8951:
2. Hốt đng cụa trình bieđn dịch (Assembler Operation)
2. Hốt đng cụa trình bieđn dịch (Assembler Operation)
Cĩ nhieău trình bieđn dịch với múc đích khác nhau cĩ tác dúng là d hieơu các ứng dúng vi đieău khieơn. ASM51 là tieđu bieơu chuaơn bieđn dịch cụa hĩ MSC-51. ASM51 là trình bieđn dịch mánh cĩ tác dúng hữu hiu tređn h thơng phát trieơn INTEL và hĩ IBM PC cụa máy vi tính.
ASM51 Source file (Assembly Control).
Trình bieđn dịch nhn moơt file nguoăn với tư cách là ngõ nhp (PROGRAM.SCR) và hĩ phát ra mt file đơi tượng (PROGRAM.OBJ) và file listing (PROGRAM.LST).
Vì haău hêt các bieđn dịch xem xét chương trình nguoăn 2 laăn trong lúc thi hành sự dịch ngođn ngữ máy, neđn chúng được mođ tạ qua 2 Pass bieđn dịch là Pass1 và Pass2.
Trong pass1, file nguoăn được xem xét từng dịng và bạng ký hiu xađy dựng. B đêm Location maịc nhieđn chĩn 0 hoaịc được đaịt bởi chư thị ORG (đaịt Origin).
Cũng như file được xem xét, b đêm Location được tng leđn baỉng đ dài mi lnh.
Chư thị data định nghĩa (đaịc bit hoaịc DW) tng b đêm Location baỉng với sơ byte định rõ, các chư thị nhớ lưu trữ (DSO tng b đêm Location bởi sơ byte dự trữ). Mi laăn mt nhãn được tìm thây ở sự baĩt đaău cụa mt đường, thì nĩ được đaịc trong bạng ký hiu theo giá trị hin hành cụa b đêm Location. Các ký hiu được định nghĩa bởi dùng các chư thị tương đương (EQU) được đaịc trong bạng ký hiu, được cât giữ và sau đĩ dùng trong pass2.
Trong Pass2, file Object và file Listing được táo ra, các thut nhớ được biên đoơi thành Opcode và đaịt trong các file output. Các tốn háng được xác định giá trị và đaịt phía sau Opcode lnh. Ở nơi các ký hiu xuât hin trong tốn háng, các ký hiu cụa chúng sẽ được lây lái từ bạng ký hiu (được táo ra trong suơt Pass1 và dùng trong sự saĩp xêp dữ liu đúng hoaịc đúng địa chư bởi các lnh).
Bởi vì Pass2 được thực thi neđn chương trình nguoăn cĩ theơ dùng “sự tham khạo trước “ là dùng ký hiu trước khi định nghĩa.
ASM51 PROGRAM.SCR
PROGRAM.OBJ
File Object nêu tuyt đơi thì chư chứa các byte nhị phađn (00H - FFH) cụa chương trình ngođn ngữ máy. File Object Relocatable chứa mt bạng ký hiu và thođng tin khác được yeđu caău bởi sự kêt hợp và xác định đúng vị trí. File Listing chứa mã nguyeđn bạng ASCII (20H – 7FH) cho cạ hai chương trình nguoăn và các byte Hexadecimal trong chương trình ngođn ngữ máy.