HLASM Programmer's Guide
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


SYM record format

HLASM Programmer's Guide
SC26-4941-06

If you request it, the assembler writes out symbolic information concerning the assembled program ahead of all other object module records. The format of the output record images is as follows:
Columns
Contents
1
X'02'
2–4
SYM
5–10
Space
11–12
Variable field—number of bytes of text in variable field (columns 17–72)
13–16
Space
17–72
Variable field (see below)
73–80
Deck ID, sequence number, or both. The deck ID is the name from the first TITLE statement that has a non-space name field. The name can be 1–8 characters. If the name is fewer than eight characters or if there is no name, the remaining columns contain a record sequence number.
The variable field (columns 17–72) contains up to 56 bytes of text. The items comprising the text are packed together; consequently, only the last record can contain less than 56 bytes of text in the variable field. The formats of a text record and an individual text item are shown in Figure 1. The contents of the fields within an individual entry are as follows:
  1. Organization (1 byte). The possible values are shown in Table 1.
    Table 1. Organization value byte
    Bits Value Description
    0 0 Non-data type
    1 Data type
    1–3 If non-data type 000 Space
    001 Control section
    010 Dummy control section
    011 Common
    100 Instruction
    101 CCW, CCW0, CCW1
    1 If data type 0 No multiplicity
    1 Multiplicity (indicates presence of M Field)
    2 If data type 0 Independent (not a packed or zoned decimal constant)
    1 Cluster (packed or zoned decimal constant)
    3 If data type 0 No scaling
    1 Scaling (indicates presence of S field)
    4 0 Name present
    1 Name not present
    5–7   Length of name minus 1
  2. Address (3 bytes)—displacement from base of control section
  3. Symbol Name (0–8 bytes)—symbolic name of particular item. If the entry is non-data type and space, an extra byte is present that contains the number of bytes that have been skipped.
  4. Data Type (1 byte)—contents in hexadecimal
    • 00 = character
    • 04 = hexadecimal or pure DBCS (G-type)
    • 08 = binary
    • 10 = fixed point, full
    • 14 = fixed point, half
    • 18 = floating point, short
    • 1C = floating point, long
    • 20 = A-type or Q-type data
    • 24 = Y-type data
    • 28 = S-type data
    • 2C = V-type data
    • 30 = packed decimal
    • 34 = zoned decimal
    • 38 = floating point, extended
  5. Length (2 bytes for character and hexadecimal, 1 byte for other types)—length of data item minus 1
  6. Multiplicity–M field (3 bytes)—equals 1 if not present
  7. Scale–signed integer–S field (2 bytes)—present only for F-, H-, E-, D-, P-, and Z-type data, and only if scale is nonzero
Figure 1. SYM record format
 1      2 4 5  10 11   12 13 16 17                              72 73        80
┌──────┬───┬─────┬───────┬─────┬──────────────────────────────────┬────────────┐
│      │   │     │No. of │     │                                  │Deck Id and │
│ X'02'│SYM│Space│bytes  │Space│        Text - packed entries     │Seq. Number │
│      │   │     │of text│     │                                  │            │
└──────┴───┴─────┴───────┴─────┴──────────────────────────────────┴────────────┘
    1    3    6      2      4           56                             8

Text

┌────────────┬─────────────────────────────────┬──────────────┐
│  Entry     │     N Complete entries          │    Entry     │
│(Complete or│          N >= 1                 │(Complete or  │
│end portion)│                                 │head portion) │
└────────────┴─────────────────────────────────┴──────────────┘
               Variable size entries

Entry

┌────┬───────┬───────────┬────┬──────┬──────┬─────┐
│Org.│Address│Symbol name│Data│Length│Mult. │Scale│
│    │       │           │Type│      │Factor│     │
└────┴───────┴───────────┴────┴──────┴──────┴─────┘
  1      3      0–8        1    1–2     3      2

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014