Self-Defining Terms

A self-defining term represents an absolute value to be assembled into an instruction as a binary number.  The assembler forms a right-justified 32-bit binary number from the bit pattern represented by the term, padded on the left with zero bits, if necessary.  Upon insertion into the instruction, the number is truncated on the left if fewer than 4 bytes are required.

A self-defining term can be expressed in decimal, binary, hexadecimal, and character format.  A decimal term is a plain sequence of decimal digits with no sign character, and no descriptor and enclosing apostrophes.  A binary or hexadecimal term may contain one or more binary or hexadecimal digits, the number of digits not being restricted to a multiple of two, four, or eight.  Leading zero digits are permitted in decimal, binary, and hexadecimal terms.  A character term, although expressed in printable-byte format, represents a binary number no less than terms of the other formats.

A self-defining term or a symbol equated to a self-defining term may be used for the absolute values of: registers, displacements, immediate data, masks, lengths, duplication factors, etc.

         BAS   X'E',C' '+8(,B'101')    DISPL = X'48' = 72
         BAS   R14,72(,R5)             SAME INSTRUCTION
*
         TM    CHAR,192                MASK FIELD = X'C0'
         TM    CHAR,BIT00+BIT01        SAME USING EQUATES
*
CHAR     DS    CL1
BIT00    EQU 128
BIT01    EQU 64

Copyright © 2006 The Stevens Computing Services Company, Inc.  All rights reserved.