HLASM Language Reference
HLASM Language Reference HLASM Language Reference
Addressing External Symbol Dictionary Entries For each section, class, part, entry, external symbol, and dummy external control section, the assembler keeps a record of the following external symbol dictionary (ESD) information: Symbolic name, if one is specified Type code Individual identification number (ESDID) Starting address Length Owning ESDID, if any Symbol attributes Alias, if one is specified Figure 20 lists the assembler instructions that define control sections and dummy control sections, classes and parts, or identify entry and external symbols, and tells their associated type codes. You can define up to 65535 individual control sections and external symbols in a source module if the NOGOFF option is specified, or up to 999999 external symbols if the GOFF option is specified. Figure 20. Defining External Symbols Name Entry Instruction Coding Entered into External Symbol Dictionary If present START, CSECT, or RSECT NOGOFF option SD GOFF option SD, ED, LD If omitted START, CSECT, or RSECT PC SD Instructiondependent Any instruction that initiates the unnamed section PC SD Optional COM CM CM Optional DSECT None None Mandatory DXD or external DSECT XD XD Mandatory CATTR Not applicable ED Mandatory CATTR PART(name) Not applicable PD Not applicable ENTRY LD LD Not applicable EXTRN ER ER Not applicable DC (V-type address constant) ER ER Not applicable WXTRN WX WX Refer to Appendix C Object Deck Output in the HLASM Programmer's Guide, SC26-4941 for details about the ESD entries produced when you specify the NOGOFF assembler option. Refer to z/OS MVS Program Management: Advanced Facilities, SA22-7644 for details about the ESD entries produced when you specify the GOFF assembler option. 72 HLASM V1R5 Language Reference
Addressing | Summary of Source and Object Program Structures | The differences between the load module model and the program object model, | and their interactions with assembler language instructions, are summarized in the | following table: | Property “Load Module” Model “Program Object” Model | Form of object program One-dimensional module Two-dimensional module | Smallest indivisible independently Control section Element and part | relocatable component | Residence Mode Only one One per class | Addressing Mode Only one One per entry point | Compatibility Can be converted to program Can be converted to load module | object with limitations | Assembler Option NOGOFF or GOFF GOFF only | Assembler statements CSECT, RSECT, START CSECT, RSECT, START, CATTR, | XATTR | Assignable loadable-program RMODE RMODE, alignment, load type | attributes | External symbol types SD/CM, LD, ER/WX, PR SD, ED, LD, ER/WX, PR, PD | External symbol maximum length 8 characters 256 characters | External symbol scope Module (WX), Library (ER) Section, Module, Library, | Import/Export | External symbol attributes AMode, RMode AMode, RMode, scope, PSect name, | linkage type, reference type, | extended attributes | Object module record types ESD, TXT, RLD, END, SYM HDR, ESD, TXT, RLD, END, LEN | Address constant types A, V, Q, CXD A, V, Q, J, R, CXD | Binding attributes Catenate (SD), Catenate (non-Merge classes), | Merge-like (CM,PR) Merge classes (Parts, | Pseudo-Registers) | Text types Byte stream Byte stream, records (structured and | unstructured) | Maximum contiguous text length 16MB 1GB | Figure 21. Object Program Structure Comparison Chapter 3. Program Structures and Addressing 73
- Page 42 and 43: Assembler Language Structure Condit
- Page 44 and 45: Assembler Language Structure Machin
- Page 46 and 47: Assembler Language Structure Condit
- Page 48 and 49: Terms, Literals, and Expressions Te
- Page 50 and 51: Terms, Literals, and Expressions -
- Page 52 and 53: Terms, Literals, and Expressions As
- Page 54 and 55: Terms, Literals, and Expressions Se
- Page 56 and 57: Terms, Literals, and Expressions Fo
- Page 58 and 59: Terms, Literals, and Expressions I
- Page 60 and 61: Terms, Literals, and Expressions Th
- Page 62 and 63: Terms, Literals, and Expressions 1.
- Page 64 and 65: Terms, Literals, and Expressions
- Page 66 and 67: Terms, Literals, and Expressions
- Page 68 and 69: Terms, Literals, and Expressions Th
- Page 70 and 71: | Chapter 3. Program Structures and
- Page 72 and 73: Source Module A source module is co
- Page 74 and 75: The CSECT instruction can be used a
- Page 76 and 77: | in linker control statements for
- Page 78 and 79: This is not only convenient, but it
- Page 80 and 81: | SECT_A CSECT , Define section SEC
- Page 82 and 83: | For executable sections, the loca
- Page 84 and 85: Addressing | The System/390® and z
- Page 86 and 87: Addressing | Parts must always be r
- Page 88 and 89: Addressing Literal Pools ALPHA LR 3
- Page 90 and 91: Addressing If the symbol is the nam
- Page 94 and 95: Addressing 74 HLASM V1R5 Language R
- Page 96 and 97: Part 2. Machine and Assembler Instr
- Page 98 and 99: General Instructions Chapter 4. Mac
- Page 100 and 101: Input/Output Operations For further
- Page 102 and 103: Branching with Extended Mnemonic Co
- Page 104 and 105: Symbolic Operation Codes variations
- Page 106 and 107: Operand Entries Registers You can s
- Page 108 and 109: Operand Entries “Program Structur
- Page 110 and 111: Operand Entries Format │ Coded or
- Page 112 and 113: Examples of Coded Machine Instructi
- Page 114 and 115: Examples of Coded Machine Instructi
- Page 116 and 117: Examples of Coded Machine Instructi
- Page 118 and 119: Examples of Coded Machine Instructi
- Page 120 and 121: Chapter 5. Assembler Instruction St
- Page 122 and 123: *PROCESS Statement *PROCESS Stateme
- Page 124 and 125: ACONTROL Instruction ►►──
- Page 126 and 127: ACONTROL Instruction FLAG(PAGE0) in
- Page 128 and 129: AINSERT Instruction character_strin
- Page 130 and 131: AMODE Instruction alias_string is t
- Page 132 and 133: CATTR Instruction Figure 25. AMODE/
- Page 134 and 135: CATTR Instruction | statements for
- Page 136 and 137: CCW1 Instruction data_count is an a
- Page 138 and 139: CEJECT Instruction If symbol is an
- Page 140 and 141: CNOP Instruction Figure 29 (Page 2
Addressing<br />
External Symbol Dictionary Entries<br />
For each section, class, part, entry, external symbol, and dummy external control<br />
section, the assembler keeps a record of the following external symbol dictionary<br />
(ESD) information:<br />
Symbolic name, if one is specified<br />
Type code<br />
Individual identification number (ESDID)<br />
Starting address<br />
Length<br />
Owning ESDID, if any<br />
Symbol attributes<br />
Alias, if one is specified<br />
Figure 20 lists the assembler instructions that define control sections and dummy<br />
control sections, classes and parts, or identify entry and external symbols, and tells<br />
their associated type codes. You can define up to 65535 individual control sections<br />
and external symbols in a source module if the NOGOFF option is specified, or up<br />
to 999999 external symbols if the GOFF option is specified.<br />
Figure 20. Defining External Symbols<br />
Name Entry Instruction Coding Entered into External Symbol<br />
Dictionary<br />
If present<br />
START, CSECT, or RSECT<br />
NOGOFF option<br />
SD<br />
GOFF option<br />
SD, ED, LD<br />
If omitted<br />
START, CSECT, or RSECT<br />
PC<br />
SD<br />
Instructiondependent<br />
Any instruction that initiates<br />
the unnamed section<br />
PC<br />
SD<br />
Optional<br />
COM<br />
CM<br />
CM<br />
Optional<br />
DSECT<br />
None<br />
None<br />
Mandatory<br />
DXD or external DSECT<br />
XD<br />
XD<br />
Mandatory<br />
CATTR<br />
Not applicable<br />
ED<br />
Mandatory<br />
CATTR PART(name)<br />
Not applicable<br />
PD<br />
Not applicable<br />
ENTRY<br />
LD<br />
LD<br />
Not applicable<br />
EXTRN<br />
ER<br />
ER<br />
Not applicable<br />
DC (V-type address constant)<br />
ER<br />
ER<br />
Not applicable<br />
WXTRN<br />
WX<br />
WX<br />
Refer to Appendix C Object Deck Output in the <strong>HLASM</strong> Programmer's Guide,<br />
SC26-4941 for details about the ESD entries produced when you specify the<br />
NOGOFF assembler option.<br />
Refer to z/OS MVS Program Management: Advanced Facilities,<br />
SA22-7644 for details about the ESD entries produced when you specify the GOFF<br />
assembler option.<br />
72 <strong>HLASM</strong> V1R5 <strong>Language</strong> <strong>Reference</strong>