Operand Specifier Notation
Operand specifiers are described in the following way:
<name>.<access type<>data type>
where:
- 1.
- Name is a suggestive name for the operand in the context of the instruction. The name is often abreviated.
- 2.
- Access type is a letter denoting the operand specifier access type:
- a
- Calculate the effective address of the specified operand. The address is returned in a long word which is the actual instruction operand. The context of address calculations is given by <data type>.
- b
- No operand reference. The operand specifier is a branch displacement. The size of the displacement operand is given by the by the <data type>.
- m
- Operand is read, potentially modified, and written. Note that this is NOT an indivisible memory operation. Also note that if the operand is not actually modified, it may not be written back. However, modify type operands are always checked for both read and write accessibility.
- r
- Operand is Read Only.
- v
- Calculate the effective address of the specified operand. If the effective address is in memory the address is returned in a longword which is the actual instruction operand. The context of address calculation is given by <data type>.
- w
- Operand is Write Only.
- 3.
- Data type is a letter denoting the data type of the operand:
- b
- Byte (8 bits).
- d
- Double Float (64 bits, 8 bit Exponent, 56 bit Fraction). omitted
- f
- Float (32 bits, 8 bit exponent, 24 bit Fraction).
- g
- G Float (64 bits, 11 bit exponent, 53 bit fraction). omitted
- h
- H Float (128 bits,11 bit exponent, 113 bit fraction). omitted
- l
- Long Word(32 bits).
- o
- Octa Word(128 bits). omitted
- q
- Quad Word(64 bits).
- w
- Word (16 bits).
- x
- The first data type specified by the instruction.
- y
- The Second data type specified by the instruction.