Figure 106 and Figure 107 summarize the types of assembler constants.
__________________________________________________________________________________________________ | Figure 106. Summary of Constants (Part 1 of 2) | |__________________________________________________________________________________________________| | | | Implicit | | Length | | | | | Length | | Modifier | | | Constant | Type| (Bytes) | Alignment | Range | Specified By | |_________________|_____|___________|___________|____________|_____________________________________| | Address | A | 4 | Fullword | .1 to 4(1) | Any expression | |_________________|_____|___________|___________|____________|_____________________________________| | Doubleword | AD | 8 | Doubleword| 2 to 8 | Any expression | | Address | | | | | | |_________________|_____|___________|___________|____________|_____________________________________| | Binary | B | As needed | Byte | .1 to 256 | Binary digits | |_________________|_____|___________|___________|____________|_____________________________________| | Character | C | As needed | Byte | .1 to | Characters | | | | | | 256(2) | | |_________________|_____|___________|___________|____________|_____________________________________| | Unicode | CU | As needed | Byte | 1 to | Characters | | Character | | | | 256(3) | | |_________________|_____|___________|___________|____________|_____________________________________| | Floating Point | D | 8 | Doubleword| .1 to 8 | Decimal digits | | Hex | | | | | | |_________________|_____|___________|___________|____________|_____________________________________| | Floating Point | DH | 8 | Doubleword| .12 to 8 | Decimal digits | | Hex | | | | | | |_________________|_____|___________|___________|____________|_____________________________________| | Floating Point | DB | 8 | Doubleword| .12 to 8 | Decimal digit | | Binary | | | | | | |_________________|_____|___________|___________|____________|_____________________________________| | Floating Point | E | 4 | Fullword | .1 to 8 | Decimal digits | | Hex | | | | | | |_________________|_____|___________|___________|____________|_____________________________________| | Floating Point | EH | 4 | Fullword | .12 to 8 | Decimal digits | | Hex | | | | | | |_________________|_____|___________|___________|____________|_____________________________________| | Floating Point | EB | 4 | Fullword | .9 to 8 | Decimal digits | | Binary | | | | | | |_________________|_____|___________|___________|____________|_____________________________________| | Fixed Point | F | 4 | Fullword | .1 to 8 | Decimal digits | |_________________|_____|___________|___________|____________|_____________________________________| | Doubleword | FD | 8 | Doubleword| .1 to 8 | Decimal digits | | Fixed Point | | | | | | |_________________|_____|___________|___________|____________|_____________________________________| | Graphic (DBCS) | G | As needed | Byte | 2 to | DBCS characters | | | | | | 256(3) | | |_________________|_____|___________|___________|____________|_____________________________________| | Fixed Point | H | 2 | Halfword | .1 to 8 | Decimal digits | |_________________|_____|___________|___________|____________|_____________________________________| | Length | J | 4 | Fullword | 1 to 4 | Class name or external DSECT | | | | | | | name(4) | |_________________|_____|___________|___________|____________|_____________________________________| | Floating Point | L | 16 | Doubleword| .1 to 16 | Decimal digits | | Hex | | | | | | |_________________|_____|___________|___________|____________|_____________________________________| | Floating Point | LH | 16 | Doubleword| .12 to 16 | Decimal digit | | Hex | | | | | | |_________________|_____|___________|___________|____________|_____________________________________| | Floating Point | LB | 16 | Doubleword| .16 to 16 | Decimal digit | | Binary | | | | | | |_________________|_____|___________|___________|____________|_____________________________________| | Decimal | P | As needed | Byte | .1 to 16 | Decimal digits | |_________________|_____|___________|___________|____________|_____________________________________| | Offset | Q | 4 | Fullword | 1 to 4 | Symbol naming a DXD or DSECT | |_________________|_____|___________|___________|____________|_____________________________________| | Address | R(4)| 4 | Fullword | 3, 4 | Symbol | |_________________|_____|___________|___________|____________|_____________________________________| | Address | S | 2 | Halfword | 2 only | One absolute or relocatable | | | | | | | expression, or two absolute | | | | | | | expressions: exp(exp) | |_________________|_____|___________|___________|____________|_____________________________________| | Address | V | 4 | Fullword | 3, 4 | Relocatable symbol | |_________________|_____|___________|___________|____________|_____________________________________| | Hexadecimal | X | As needed | Byte | .1 to | Hex digits | | | | | | 256(2) | | |_________________|_____|___________|___________|____________|_____________________________________| | Address | Y | 2 | Halfword | .1 to 2(1) | Any expression | |_________________|_____|___________|___________|____________|_____________________________________| | Decimal | Z | As needed | Byte | .1 to 16 | Decimal digits | |_________________|_____|___________|___________|____________|_____________________________________| | Notes: | | | | 1. Bit length specification permitted with absolute expressions only; relocatable A-type | | constants, 2, 3, or 4 bytes only; relocatable Y-type constants, 2 bytes only. | | | | 2. In a DS assembler instruction, C-and-X type constants can have length specification to | | 65535. | | | | 3. The length modifier must be a multiple of 2, and may be up to 65534 in a DS assembler | | instruction. | | | | 4. GOFF only. | |__________________________________________________________________________________________________|
__________________________________________________________________________________________________ | Figure 107. Summary of Constants (Part 2 of 2) | |__________________________________________________________________________________________________| | | | No. of | | | | | | | Constants | | | | | | | per | Range for | Range for | | | Constant | Type| Operand | Exponents | Scale | Truncation or Padding Side | |__________________|_____|___________|_____________|______________|________________________________| | Address | A | Multiple | | | Left | |__________________|_____|___________|_____________|______________|________________________________| | Binary | B | Multiple | | | Left | |__________________|_____|___________|_____________|______________|________________________________| | Character | C | One | | | Right | |__________________|_____|___________|_____________|______________|________________________________| | Unicode | CU | One | | | Right | | Character | | | | | | |__________________|_____|___________|_____________|______________|________________________________| | Floating Point | D | Multiple | -85 to +75 | 0 to 14 | Right(1) | | Hex | | | | | | |__________________|_____|___________|_____________|______________|________________________________| | Floating Point | DH | Multiple | -2(31) to | 0 to 14 | Right(1) | | Hex | | | 2(31)-1 | | | |__________________|_____|___________|_____________|______________|________________________________| | Floating Point | DB | Multiple | -2(31) to | N/A | Right(1) | | Binary | | | 2(31)-1 | | | |__________________|_____|___________|_____________|______________|________________________________| | Floating Point | E | Multiple | -85 to +75 | 0 to 14 | Right(1) | | Hex | | | | | | |__________________|_____|___________|_____________|______________|________________________________| | Floating Point | EH | Multiple | -2(31) to | 0 to 14 | Right(1) | | Hex | | | 2(31)-1 | | | |__________________|_____|___________|_____________|______________|________________________________| | Floating Point | EB | Multiple | -2(31) to | N/A | Right(1) | | Binary | | | 2(31)-1 | | | |__________________|_____|___________|_____________|______________|________________________________| | Fixed Point | F | Multiple | -85 to +75 | -187 to +346 | Left(1) | |__________________|_____|___________|_____________|______________|________________________________| | Graphic (DBCS) | G | One | | | Right | |__________________|_____|___________|_____________|______________|________________________________| | Fixed Point | H | Multiple | -85 to +75 | -187 to +346 | Left(1) | |__________________|_____|___________|_____________|______________|________________________________| | Length | J | Multiple | | | Left(1) | |__________________|_____|___________|_____________|______________|________________________________| | Floating Point | L | Multiple | -85 to +75 | 0 to 28 | Right(1) | | Hex | | | | | | |__________________|_____|___________|_____________|______________|________________________________| | Floating Point | LH | Multiple | -2(31) to | 0 to 28 | Right(1) | | Hex | | | 2(31)-1 | | | |__________________|_____|___________|_____________|______________|________________________________| | Floating Point | LB | Multiple | -2(31) to | N/A | Right(1) | | Binary | | | 2(31)-1 | | | |__________________|_____|___________|_____________|______________|________________________________| | Floating Point | L | Multiple | -85 to +75 | 0 to 28 | Right(1) | |__________________|_____|___________|_____________|______________|________________________________| | Decimal | P | Multiple | | | Left | |__________________|_____|___________|_____________|______________|________________________________| | Offset | Q | Multiple | | | Left | |__________________|_____|___________|_____________|______________|________________________________| | Address | R | Multiple | | | Left | |__________________|_____|___________|_____________|______________|________________________________| | Address | S | Multiple | | | | |__________________|_____|___________|_____________|______________|________________________________| | Address | V | Multiple | | | Left | |__________________|_____|___________|_____________|______________|________________________________| | Hexadecimal | X | Multiple | | | Left | |__________________|_____|___________|_____________|______________|________________________________| | Address | Y | Multiple | | | Left | |__________________|_____|___________|_____________|______________|________________________________| | Decimal | Z | Multiple | | | Left | |__________________|_____|___________|_____________|______________|________________________________| | Notes: | | | | 1. Errors are flagged if significant bits are truncated or if the value specified cannot be | | contained in the implicit length of the constant. | |__________________________________________________________________________________________________|