Next: MIXAL directives, Previous: MIXAL, Up: MIXAL
The MIX assembler reads MIXAL files line by line, producing, when required, a binary instruction, which is associated to a predefined memory address. To keep track of the current address, the assembler maintains an internal location counter which is incremented each time an instruction is compiled. In addition to MIX instructions, you can include in MIXAL file assembly directives (or pseudoinstructions) addressed at the assembler itself (for instance, telling it where the program starts and ends, or to reposition the location counter; see below).
MIX instructions and assembler directives1 are written in MIXAL (one per source file line) according to the following pattern:
[LABEL] MNEMONIC [OPERAND] [COMMENT]
where `OPERAND' is of the form
[ADDRESS][,INDEX][(MOD)]
Items between square brackets are optional, and
LABEL
MNEMONIC
LDA
, STA
; see see MIX instruction set) or an
assembly pseudoinstruction (e.g. ORG
, EQU
),
ADDRESS
INDEX
ADDRESS
is present,
MOD
OPCODE
,
COMMENT
Note that spaces are not allowed between the ADDRESS
,
INDEX
and MOD
fields if they are present. White space is
used to separate the label, operation code and operand parts of the
instruction2.
We have already listed the mnemonics associated will each MIX instructions; sample MIXAL instructions representing MIX instructions are:
HERE LDA 2000 HERE represents the current location counter LDX HERE,2(1:3) this is a comment JMP 1234