Offset constant—Q
Use this constant to reserve storage for the offset into a storage area of an external dummy section, or the offset to a part or label in a class. The offset is entered into this space by the binder. The binder inserts the offset into a QY-type constant in 20 bit signed long-displacement format. When the offset is added to the address of an overall block of storage set aside for external dummy sections, it addresses the applicable section.
For a description of the use of the Q-type offset constant in combination with an external dummy section, see External dummy sections. See also Table 1 for details.
In the following example, to access the external dummy section
named
VALUE, the value of the constant labeled A is
added to the base address of the block of storage allocated for external
dummy sections. A DC Q(VALUE)The DXD, DSECT, or part names referenced in the Q-type offset constant need not be previously defined.
| Subfield | Value | Example | Result | |
|---|---|---|---|---|
| 1. | Duplication factor | Allowed | ||
| 2. | Type | Q | ||
| 3. | Type Extension | D, Y | ||
| 4. | Program type | Allowed | ||
| 5. | Modifiers | |||
| Length: | Q-type: 1-4 bytes QD-type: 1-8 bytes QY-type: 3 bytes only (no bit length) |
QL2(DXDEXT) | ||
| Implicit length: (Length modifier not present) |
Q-type: 4 bytes QD-type: 8 bytes QY-type: 3 bytes |
Q(DXDEXT) | ||
| Alignment: (Length modifier not present) |
Q-type: Fullword QD-type: Doubleword QY-type: Halfword |
|||
| Scale: | Not allowed | |||
| Exponent: | Not allowed | |||
| 6. | Nominal value Represented by: |
A DXD, DSECT, or part name (an external symbol) |
DC Q(DUMMYEXT) DC Q(DXDEXT) |
|
| Enclosed by: | Parentheses | |||
| Exponent allowed: | No | |||
| Number of values per operand: | Multiple | |||
| Padding: | None | |||
| Truncation of assembled value: | Not applicable | |||