A compound expression is an arithmetic combination
of at least two, but not more than three simple ex-
The expressions may be compounded
with addition (+), subtraction (-), or multiplication
Compound expressions must not begin or end with an
arithmetic operator. Simple expressions within com-
pound ones must be separated with one and only one
The following are incorrect:
An expression becomes absolute
it contains only
absolute symbols and/or self-defining values.
also absolute if it has one of the following forms:
absolute symbol or self-defining value
Thus, the following are all absolute expressions:
Relocatable expressions must conform to the rules
An expression must contain either one or three
If there is one relocatable symbol, it must not
be preceded by a subtraction (-) operator.
If three relocatable symbols are present, one
and only one may be preceded by a subtraction
Relocatable symbols may not be compounded
with the multiplication operator. Only absolute
expressions are legitimate operands in multi-
The following are examples of correct relocatable
DOG+CA T e FIGHT,
176 - DOG
OOG - CAT - HOPE
Contains two relocatable symbols
Multiplication of relocatable symbol
No subtraction operator
Single relocatable symbol preceded by
Two subtraction operators
The length of an operand may be implied by omitting
any reference to length in an Assembly statement.
ABLE (3) ,BAKER
line two of the example above, the number of
bytes moved from location BAKER to ABLE is equal
to the number allocated when the name BAKER was
defined. If BAKER is the name of a 3 byte
storage area, the implied length is three.
An implied length that exceeds the value permitted
in an instruction is flagged, and the object length
field is set to zeros.
If a name is defined in a statement using an asterisk
or a self-defined-value, the implied length is one.
When a compound expression is used as
NAME OPERATION OPERAND
ABLE, A+B-C Implied Length
is Length of A
the implied length is the length assigned to the left-
most factor in the expression.
ASSEMBLER CONTROLLING CODES
The DS (Define Storage) code allocates and reserves
working storage and input/output areas.
The number of units of memory to be reserved, fol-
lowed by the letters C, H, or F (byte, halfword, or
full word), appears in the OPERAND field.