HLASM Language Reference

HLASM Language Reference HLASM Language Reference

faculty.cs.niu.edu
from faculty.cs.niu.edu More from this publisher
22.02.2015 Views

Assembler Instructions and Statements Figure 111 (Page 2 of 2). Assembler Statements Instruction Entry Name Entry Operand Entry Assembler Language Statement12 An ordinary symbol, a variable symbol, a sequence symbol, or a combination of variable symbols and other characters that is equivalent to a symbol, or space Any combination of characters (including variable symbols) Notes: 1. Variable symbols may be used to generate assembler language mnemonic operation codes (listed in Chapter 5, “Assembler Instruction Statements” on page 100), except COPY, ICTL, ISEQ, and REPRO. Variable symbols may not be used in the name and operand entries of COPY, ICTL, and ISEQ instructions, except for the COPY instruction in open code, where a variable symbol is allowed for the operand entry. 2. No substitution is done for variables in the line following a REPRO statement. 3. May only be used as part of a macro definition. 4. When the name field of a macro instruction contains a sequence symbol, the sequence symbol is not passed as a name field parameter. It only has meaning as a possible branch target for conditional assembly. 5. Variable symbols appearing in a macro instruction are replaced by their values before the macro instruction is processed. 406 HLASM V1R5 Language Reference

Summary of Constants Appendix B. Summary of Constants Figure 112 and Figure 113 on page 408 summarize the types of assembler constants. Figure 112. Summary of Constants (Part 1 of 2) Constant Type Implicit Length (Bytes) Alignment Length Modifier Range Specified By Address A 4 Fullword .1 to 4 Any expression Doubleword Address AD 8 Doubleword 2 to 8 Any expression Binary B As needed Byte .1 to 256 Binary digits Character C As needed Byte .1 to 256 Characters | ASCII Character CA As needed Byte .1 to 256 Characters | Unicode Character CU As needed Byte 2 to 256 Characters Floating Point Hex D 8 Doubleword .1 to 8 Decimal digits Floating Point Hex DH 8 Doubleword .12 to 8 Decimal digits Floating Point Binary DB 8 Doubleword .12 to 8 Decimal digits Floating Point Hex E 4 Fullword .1 to 8 Decimal digits Floating Point Hex EH 4 Fullword .12 to 8 Decimal digits Floating Point Binary EB 4 Fullword .9 to 8 Decimal digits Fixed Point F 4 Fullword .1 to 8 Decimal digits Doubleword Fixed Point FD 8 Doubleword .1 to 8 Decimal digits Graphic (DBCS) G As needed Byte 2 to 256 DBCS characters Fixed Point H 2 Halfword .1 to 8 Decimal digits Length J 4 Fullword 1 to 4 Class name or external DSECT name Floating Point Hex L 16 Doubleword .1 to 16 Decimal digits Floating Point Hex LH 16 Doubleword .12 to 16 Decimal digits Floating Point Binary LB 16 Doubleword .16 to 16 Decimal digits | Floating Point Hex LQ 16 Quadword .1 to 16 Decimal digits 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 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 256 Hex digits Address Y 2 Halfword .1 to 2 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. © Copyright IBM Corp. 1982, 2004 407

Assembler Instructions and Statements<br />

Figure 111 (Page 2 of 2). Assembler Statements<br />

Instruction Entry Name Entry Operand Entry<br />

Assembler<br />

<strong>Language</strong><br />

Statement12<br />

An ordinary symbol, a variable<br />

symbol, a sequence symbol, or<br />

a combination of variable<br />

symbols and other characters<br />

that is equivalent to a symbol,<br />

or space<br />

Any combination of characters<br />

(including variable symbols)<br />

Notes:<br />

1. Variable symbols may be used to generate assembler language mnemonic operation<br />

codes (listed in Chapter 5, “Assembler Instruction Statements” on page 100), except<br />

COPY, ICTL, ISEQ, and REPRO. Variable symbols may not be used in the name and<br />

operand entries of COPY, ICTL, and ISEQ instructions, except for the COPY instruction<br />

in open code, where a variable symbol is allowed for the operand entry.<br />

2. No substitution is done for variables in the line following a REPRO statement.<br />

3. May only be used as part of a macro definition.<br />

4. When the name field of a macro instruction contains a sequence symbol, the sequence<br />

symbol is not passed as a name field parameter. It only has meaning as a possible<br />

branch target for conditional assembly.<br />

5. Variable symbols appearing in a macro instruction are replaced by their values before<br />

the macro instruction is processed.<br />

406 <strong>HLASM</strong> V1R5 <strong>Language</strong> <strong>Reference</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!