All letters and numbers are allowed. The assembler discriminates between uppercase and lowercase letters. To the assembler, the variables Name and name identify distinct symbols.
Some blank spaces are required, while others are optional. The assembler allows you to substitute tabs for spaces.
The following characters have special meaning in the operating system assembler language:
, (comma) | Operand separator. Commas are allowed in statements only between operands,
for example:
a 3,4,5 |
# (pound sign) | Comments. All text following a # to the end
of the line is ignored by the assembler. A # can be
the first character in a line, or it can be preceded by any number of characters,
blank spaces, or both. For example:
a 3,4,5 # Puts the sum of GPR4 and GPR5 into GPR3. |
: (colon) | Defines a label. The : always appears immediately
after the last character of the label name and defines a label equal to the
value contained in the location counter at the time the assembler encounters
the label. For example:
add: a 3,4,5 # Puts add equal to the address # where the a instruction is found. |
; (semicolon) | Instruction separator. A semicolon separates two instructions that
appear on the same line. Spaces around the semicolon are optional. A single
instruction on one line does not have to end with a semicolon.
To keep the assembler listing clear and easily understandable, it is suggested that each line contain only one instruction. For example: a 3,4,5 # These two lines have a 4,3,5 # the same effect as... a 3,4,5; a 4,3,5 # ...this line. |
$ (dollar sign) | Refers to the current value in the assembler's current location counter.
For example:
dino: .long 1,2,3 size: .long $ - dino |
The atof subroutine.
.comm Pseudo-op, .csect Pseudo-op, .double Pseudo-op, .dsect Pseudo-op, .float Pseudo-op, .lcomm Pseudo-op, .tc Pseudo-op, .toc Pseudo-op, .tocof Pseudo-op.