18.08.2013 Views

Meta-Assembler (MASM) Programming Reference Manual

Meta-Assembler (MASM) Programming Reference Manual

Meta-Assembler (MASM) Programming Reference Manual

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>MASM</strong> Usage<br />

2-18<br />

Example 4<br />

EOFADR*<br />

The label field consists of a symbol and a dictionary control character (*).<br />

Example 5<br />

ARG*(1,5)<br />

ARG(1,5)*<br />

The label fields of both these lines have the same effect. The label field of both lines<br />

consists of the following items:<br />

A symbol<br />

A node selection<br />

A dictionary control character<br />

Example 6<br />

TAG,IOG<br />

The label field consists of two subfields, each containing a symbol. The value assigned<br />

to each symbol depends upon its use.<br />

Example 7<br />

TAG,K $DO 10,+K<br />

The symbol TAG will be assigned the value of the current location counter. The symbol<br />

K is assigned incrementing values (1, 2, ...). (See 6.2.1 for a discussion of $DO.)<br />

2.3.3.1.1.Externalized Labels<br />

A label can be externalized (known outside of the program). It is externalized when<br />

placed at level 0 of the dictionary. <strong>MASM</strong> inserts labels in the main assembly into level 1<br />

of the dictionary. Each asterisk (*) suffixed to a <strong>MASM</strong> label inserts that label one level<br />

higher in the dictionary.<br />

For example, assume a processing level of 1 for the following line:<br />

TAG* $EQU 6<br />

When <strong>MASM</strong> encounters this line, it inserts the symbol TAG at level 0 of the dictionary.<br />

This causes the symbol to be known outside the program. Such labels are entered into<br />

the entry point table in the preamble of the relocatable binary element.<br />

7830 8269-001

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!