HLASM Language Reference
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


START instruction

HLASM Language Reference
SC26-4940-06

The START instruction can be used to initiate the first or only executable control section of a source module, and optionally to set an initial location counter value.
Read syntax diagramSkip visual syntax diagram
>>-+--------+--START--+------------+---------------------------><
   '-symbol-'         '-expression-'   

symbol
Is one of the following:
  • An ordinary symbol
  • A variable symbol that has been assigned a character string with a value that is valid for an ordinary symbol
  • A sequence symbol
expression
Is an absolute expression, the value of which the assembler uses to set the location counter to an initial value for the source module.

Any symbols referenced in expression must have been previously defined.

The START instruction must be the first instruction of the first executable control section of a source module. It must not be preceded by any instruction that affects the location counter for an executable control section (that is, not a reference section such as COM, DXD, or DSECT), and thus causes the first executable control section to be initiated.

Use the START instruction to initiate the first or only control section of a source module, because it:
  • Determines exactly where the first control section is to begin, thus avoiding the accidental initiation of the first control section by some other instruction.
  • Gives a symbolic name to the first control section, which can then be distinguished from the other control sections listed in the external symbol dictionary.
  • Specifies the initial setting of the location counter for the first or only control section.

If symbol denotes an ordinary symbol, the ordinary symbol identifies the first control section. It must be used in the name field of any CSECT instruction that indicates the continuation of the first control section. The ordinary symbol denoted by symbol represents the address of the first byte in the control section, and has a length attribute value of 1.

If symbol is not specified, or if name is a sequence symbol, the START instruction initiates an unnamed control section.

The assembler uses the value expression in the operand field, if specified, to set the location counter to an initial value for the source module. All control sections are aligned on the boundary specified by the SECTALGN option. Therefore, if the value specified in expression is not divisible by the SECTALGN value, the assembler sets the initial value of the location counter to the next higher required boundary. If expression is omitted, the assembler sets the initial value to 0.

The source statements that follow the START instruction are assembled into the first control section. If a CSECT instruction indicates the continuation of the first control section, the source statements that follow this CSECT instruction are also assembled into the first control section.

Any instruction that defines a new or continued control section marks the end of the preceding control section. The END instruction marks the end of the control section in effect.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014