8、 IMPORT
語法格式:
IMPORT 標(biāo)號 {[WEAK]}
IMPORT 偽指令用于通知編譯器要使用的標(biāo)號在其他的源文件中定義,但要在當(dāng)前源文件中引用,而且無論當(dāng)前源文件是否引用該標(biāo)號,該標(biāo)號均會被加入到當(dāng)前源文件的符號表中。
標(biāo)號在程序中區(qū)分大小寫, [WEAK] 選項(xiàng)表示當(dāng)所有的源文件都沒有定義這樣一個(gè)標(biāo)號時(shí),編譯器也不給出錯(cuò)誤信息,在多數(shù)情況下將該標(biāo)號置為0 ,若該標(biāo)號為B 或BL指令引用,則將B或BL指令置為 NOP 操作。
使用示例:
AREA Init , CODE , READONLY
IMPORT Main ;通知編譯器當(dāng)前文件要引用標(biāo)號Main,但Main在其他源文件中定義
……
END
9、 EXTERN
語法格式:
EXTERN 標(biāo)號 {[WEAK]}
EXTERN 偽指令用于通知編譯器要使用的標(biāo)號在其他的源文件中定義,但要在當(dāng)前源文件中引用,如果當(dāng)前源文件實(shí)際并未引用該標(biāo)號,該標(biāo)號就不會被加入到當(dāng)前源文件的符號表中。標(biāo)號在程序中區(qū)分大小寫, [WEAK] 選項(xiàng)表示當(dāng)所有的源文件都沒有定義這樣一個(gè)標(biāo)號時(shí),編譯器也不給出錯(cuò)誤信息,在多數(shù)情況下將該標(biāo)號置為 0 ,若該標(biāo)號為 B 或 BL 指令引用,則將 B 或 BL指令置為 NOP 操作。
使用示例:
AREA Init , CODE , READONLY
EXTERN Main ;通知編譯器當(dāng)前文件要引用標(biāo)號Main,但Main 在其他源文件中定義……
END
10、 GET(或INCLUDE)
語法格式:
GET 文件名
GET 偽指令用于將一個(gè)源文件包含到當(dāng)前的源文件中,并將被包含的源文件在當(dāng)前位置進(jìn)行匯編處理。可以使用 INCLUDE 代替 GET 。
匯編程序中常用的方法是在某源文件中定義一些宏指令,用 EQU 定義常量的符號名稱,用MAP和FIELD 定義結(jié)構(gòu)化的數(shù)據(jù)類型,然后用 GET 偽指令將這個(gè)源文件包含到其他的源文件中。使用方法與 C 語言中的 “ include ” 相似。
GET 偽指令只能用于包含源文件,包含目標(biāo)文件需要使用 INCBIN 偽指令
使用示例:
AREA Init , CODE , READONLY
GET a1.s ;通知編譯器當(dāng)前源文件包含源文件a1.s
GE T C:\a2.s ;通知編譯器當(dāng)前源文件包含源文件C:\ a2.s ……
END