Keil™, An ARM® Company

Ax51 User's Guide

EXTERN Assembler Statement

Syntax 
EXTERN class:type (symbol « , symbol ... »)
Description 

The EXTERN statement (which may appear anywhere in the assembler source file) specifies symbols that the current source file uses but which are defined in other object modules. The module where the symbols are defined must export them using a PUBLIC statement. The EXTERN statement specifies the symbol, its memory class, and its data type.

Valid classes are:

classDescription
BITA symbol located in BIT memory space.
CODEA symbol located in CODE space.
CONSTA symbol located in CONST memory.
DATAA symbol located in DATA space.
EBITA symbol located in the EBIT memory space.
ECONSTA symbol located in ECONST memory.
EDATAA symbol located in EDATA memory.
ECODEA symbol located in ECODE memory.
HDATAA symbol located in the HDATA memory space.
HCONSTA symbol located in HCONST memory.
IDATAA symbol located in IDATA memory.
XDATAA symbol located in XDATA memory.
NUMBERA symbol located in any memory space.

Following is a list of valid types:

typeDescription
BYTEA byte variable.
DWORDA double-word variable.
FARA far label.
NEARA near label.
WORDA word variable.

The linker resolves all external symbols and verifies that the classes and types match. Symbols whose class is NUMBER match any memory class.

Note

  • This directive is available in the AX51 Assembler only.
See Also EXTRN, PUBLIC
Example 
EXTERN   CODE:FAR (main)
EXTERN   NUMBER (tabsize)
EXTERN   DATA:BYTE (counter)