HLASM Language Reference
HLASM Language Reference HLASM Language Reference
Data Attributes variable_symbol is a variable symbol that represents the data that possesses the attribute. literal is a literal that represents the data that possesses the attribute. A literal cannot be specified with the operation code attribute or count attribute. character_string is a character string that represents the operation code in the operation code attribute. Examples: T'SYMBOL L'&VAR K'&PARAM O'MVC S'=P'975.32' The assembler substitutes the value of the attribute for the attribute reference. | Reference to the count (K'), defined (D'), number (N'), operation code (O'), and | type (T') attributes can be used only in conditional assembly instructions or within | macro definitions. The length (L'), integer (I'), and scale (S') attribute references can be in conditional assembly instructions, machine instructions, assembler instructions, and the operands of macro instructions. | Attributes of Symbols and Expressions | Figure 88 shows attribute references (in the columns) and types of symbols (in the | rows). Each intersection shows whether (“Yes”) or not (“No”) you can validly apply | the attribute reference to that symbol type, or (in the case of SET symbols) to the | value of the symbol. Figure 88 (Page 1 of 2). Attributes and Related Symbols Symbols Specified Type T' Length L' Scale S' Integer I' Count K' Number N' Defined D' Operation Code O' In open code: Ordinary symbols Yes Yes Yes Yes No No Yes No System variable symbols with global scope Yes No No No Yes Yes No No | Literals Yes Yes Yes Yes No No Yes No 326 HLASM V1R5 Language Reference
Data Attributes Figure 88 (Page 2 of 2). Attributes and Related Symbols Symbols Specified Type T' Length L' Scale S' Integer I' Count K' Number N' Defined D' Operation Code O' In macro definitions: Ordinary symbols Yes Yes Yes Yes No No Yes No Symbolic parameters Yes Yes Yes Yes Yes Yes Yes Yes System variable symbols: &SYSLIST Yes Yes Yes Yes Yes Yes Yes No All others Yes No No No Yes Yes No No | Literals in Yes | macro instruction | operands Yes Yes Yes No No Yes No | The values of attribute references may be used in ordinary and conditional | assembly expressions, as shown in Figure 89. | Figure 89. Using Attribute Values | Symbols Type Length Scale Integer Count Number Defined Operation | Specified T' L' S' I' K' N' D' Code O' | In open code: SETB, SETA, SETA, SETA, SETA, SETA, SETA, SETB, | SET symbols SETC SETB SETB SETB SETB SETB SETB SETC | | In ordinary assembly: No Yes Yes Yes No No No No | In macro SETB, SETA, SETA, SETA, SETA, SETA, SETA, SETB, | definitions: SETC SETB SETB SETB SETB SETB SETB SETC | SET symbols Note: 1. Only in character relations. 2. Only in arithmetic relations. The value of an attribute for an ordinary symbol specified in an attribute reference comes from the item named by the symbol. The symbol must appear in the name field of an assembler or machine instruction, or in the operand field of an EXTRN or WXTRN instruction. The value of an attribute reference to an expression is the value of that attribute reference to its leftmost term. Notes: 1. You cannot refer to the names of instructions generated by conditional assembly substitution or macro generation until the instruction is generated. 2. If you use a symbol qualifier to qualify an ordinary symbol in an attribute reference, the qualifier is ignored. Chapter 9. How to Write Conditional Assembly Instructions 327
- Page 296 and 297: &SYSLIST System Variable Symbol The
- Page 298 and 299: &SYSLOC System Variable Symbol To
- Page 300 and 301: &SYSM_SEV System Variable Symbol &S
- Page 302 and 303: &SYSNDX System Variable Symbol The
- Page 304 and 305: &SYSOPT_DBCS System Variable Symbol
- Page 306 and 307: &SYSPARM System Variable Symbol Not
- Page 308 and 309: &SYSPRINT_MEMBER System Variable Sy
- Page 310 and 311: &SYSPUNCH_MEMBER System Variable Sy
- Page 312 and 313: &SYSSTEP System Variable Symbol Not
- Page 314 and 315: &SYSTERM_DSN System Variable Symbol
- Page 316 and 317: &SYSTIME System Variable Symbol Not
- Page 318 and 319: Macro Instruction Format sequence_s
- Page 320 and 321: Macro Instruction Format Operand En
- Page 322 and 323: Macro Instruction Format When you n
- Page 324 and 325: Sublists in Operands the order in w
- Page 326 and 327: Sublists in Operands &SYSLIST( n,m)
- Page 328 and 329: Values in Operands Notes: 1. Spaces
- Page 330 and 331: Values in Operands Parentheses In m
- Page 332 and 333: Inner and Outer Macro Instructions
- Page 334 and 335: Levels of Macro Call Nesting When t
- Page 336 and 337: Levels of Macro Call Nesting System
- Page 338 and 339: How to Write Conditional Assembly I
- Page 340 and 341: SET Symbols SET Symbol Specificatio
- Page 342 and 343: SET Symbols Figure 86 (Page 3 of 3)
- Page 344 and 345: Data Attributes this example indica
- Page 348 and 349: Data Attributes The value of an att
- Page 350 and 351: Data Attributes The following attri
- Page 352 and 353: Data Attributes Assembler gives a t
- Page 354 and 355: Data Attributes The scale attribute
- Page 356 and 357: Data Attributes Number Attribute (N
- Page 358 and 359: Data Attributes The operation code
- Page 360 and 361: Lookahead MACRO &NAME MOVE &TO,&FRO
- Page 362 and 363: Open Code Sequence Symbols The cond
- Page 364 and 365: GBLA, GBLB, and GBLC Instructions G
- Page 366 and 367: LCLA, LCLB, and LCLC Instructions s
- Page 368 and 369: SETA Instruction expression is an a
- Page 370 and 371: SETA Instruction | The logical-exp
- Page 372 and 373: SETA Instruction | Figure 99 (Page
- Page 374 and 375: SETA Instruction | The result of C2
- Page 376 and 377: SETA Instruction NOT Format: Logica
- Page 378 and 379: SETA Instruction | X2A Name Operati
- Page 380 and 381: SETA Instruction In evaluating the
- Page 382 and 383: SETB Instruction Any expression tha
- Page 384 and 385: SETB Instruction ┌─────
- Page 386 and 387: SETB Instruction | ISDEC | Format:
- Page 388 and 389: SETB Instruction The two comparands
- Page 390 and 391: SETC Instruction Notes: 1. The asse
- Page 392 and 393: Figure 103. Substring Notation in C
- Page 394 and 395: Loc Object Code Addr1 Addr2 Stmt So
Data Attributes<br />
Figure 88 (Page 2 of 2). Attributes and Related Symbols<br />
Symbols<br />
Specified<br />
Type<br />
T'<br />
Length<br />
L'<br />
Scale<br />
S'<br />
Integer<br />
I'<br />
Count<br />
K'<br />
Number<br />
N'<br />
Defined<br />
D'<br />
Operation<br />
Code O'<br />
In macro<br />
definitions:<br />
Ordinary<br />
symbols<br />
Yes<br />
Yes<br />
Yes<br />
Yes<br />
No<br />
No<br />
Yes<br />
No<br />
Symbolic<br />
parameters<br />
Yes<br />
Yes<br />
Yes<br />
Yes<br />
Yes<br />
Yes<br />
Yes<br />
Yes<br />
System variable<br />
symbols:<br />
&SYSLIST<br />
Yes<br />
Yes<br />
Yes<br />
Yes<br />
Yes<br />
Yes<br />
Yes<br />
No<br />
All others<br />
Yes<br />
No<br />
No<br />
No<br />
Yes<br />
Yes<br />
No<br />
No<br />
| Literals in<br />
Yes<br />
| macro instruction<br />
| operands<br />
Yes<br />
Yes<br />
Yes<br />
No<br />
No<br />
Yes<br />
No<br />
| The values of attribute references may be used in ordinary and conditional<br />
| assembly expressions, as shown in Figure 89.<br />
| Figure 89. Using Attribute Values<br />
| Symbols<br />
Type Length Scale Integer Count Number Defined Operation<br />
| Specified<br />
T' L' S'<br />
I'<br />
K' N'<br />
D'<br />
Code O'<br />
| In open code:<br />
SETB, SETA, SETA, SETA, SETA, SETA, SETA, SETB,<br />
| SET symbols<br />
SETC SETB SETB SETB SETB SETB SETB SETC<br />
|<br />
| In ordinary assembly: No Yes Yes Yes No No<br />
No<br />
No<br />
| In macro<br />
SETB, SETA, SETA, SETA, SETA, SETA, SETA, SETB,<br />
| definitions:<br />
SETC SETB SETB SETB SETB SETB SETB SETC<br />
| SET symbols<br />
Note:<br />
1. Only in character relations.<br />
2. Only in arithmetic relations.<br />
The value of an attribute for an ordinary symbol specified in an attribute reference<br />
comes from the item named by the symbol. The symbol must appear in the name<br />
field of an assembler or machine instruction, or in the operand field of an EXTRN or<br />
WXTRN instruction.<br />
The value of an attribute reference to an expression is the value of that attribute<br />
reference to its leftmost term.<br />
Notes:<br />
1. You cannot refer to the names of instructions generated by conditional<br />
assembly substitution or macro generation until the instruction is generated.<br />
2. If you use a symbol qualifier to qualify an ordinary symbol in an attribute<br />
reference, the qualifier is ignored.<br />
Chapter 9. How to Write Conditional Assembly Instructions 327