Assembler instructions

Table 1 summarizes the basic formats of assembler instructions, and Table 2 summarizes assembler statements.
Table 1. Assembler instructions
Operation Entry Name Entry Operand Entry
ACONTROL5 A sequence symbol or space One or more operands, separated by commas
ACTR A sequence symbol or space An arithmetic SETA expression
ADATA5 A sequence symbol or space One-to-four decimal, self-defining terms, and one character string, separated by commas.
AEJECT2 A sequence symbol or space Taken as a remark
AGO A sequence symbol or space A sequence symbol
AIF A sequence symbol or space A logical expression enclosed in parentheses, immediately followed by a sequence symbol
AINSERT5 A sequence symbol or space A character string, followed by FRONT or BACK
AMODE Any symbol or space 24, 31, 64, ANY, or ANY31
ALIAS5 A symbol A character string or a hexadecimal string
ANOP A sequence symbol or space Taken as a remark
AREAD2 Any SETC symbol NOPRINT, NOSTMT, CLOCKB, CLOCKD, or spaces
ASPACE A sequence symbol or space An absolute expression
CATTR (z/OS® and CMS) A valid program object external class name One or more attributes
CCW4 Any symbol or space Four operands, separated by commas
CCW04 Any symbol or space Four operands, separated by commas
CCW14 Any symbol or space Four operands, separated by commas
CEJECT5 A sequence symbol or space An absolute expression or space
CNOP4 Any symbol or space Two absolute expressions, separated by a comma
COM Any symbol or space Taken as a remark
COPY5 A sequence symbol or space An ordinary symbol, or, for open code statements, a variable symbol
CSECT Any symbol or space Taken as a remark
CXD4 Any symbol or space Taken as a remark
DC4 Any symbol or space One or more operands, separated by commas
DROP A sequence symbol or space One or more absolute expressions and symbols, separated by commas, or space
DS4 Any symbol or space One or more operands, separated by commas
DSECT A symbol or space Taken as a remark
DXD5 A symbol One or more operands, separated by commas
EJECT5 A sequence symbol or space Taken as a remark
END A sequence symbol or space A relocatable expression or space
ENTRY5 A sequence symbol or space One or more relocatable symbols, separated by commas
EQU4 A variable symbol or an ordinary symbol One to five operands, separated by commas
EXITCTL5 A sequence symbol or space A character-string operand followed by one to four decimal self-defining terms, separated by commas
EXTRN5 A sequence symbol or space One or more relocatable symbols, separated by commas
GBLA A sequence symbol or space One or more variable symbols that are to be used as SET symbols, separated by commas1
GBLB A sequence symbol or space One or more variable symbols that are to be used as SET symbols, separated by commas1
GBLC A sequence symbol or space One or more variable symbols that are to be used as SET symbols, separated by commas1
ICTL Space One to three decimal self-defining terms, separated by commas
ISEQ5 A sequence symbol or space Two decimal self-defining terms, separated by a comma, or space
LCLA A sequence symbol or space One or more variable symbols that are to be used as SET symbols, separated by commas1
LCLB A sequence symbol or space One or more variable symbols that are to be used as SET symbols, separated by commas1
LCLC A sequence symbol or space One or more variable symbols separated by commas¹
LOCTR A variable or ordinary symbol Taken as a remark
LTORG Any symbol or space Taken as a remark
MACRO2,5 Space Taken as a remark
MEND2,5 A sequence symbol or space Taken as a remark
MEXIT2,5 A sequence symbol or space Taken as a remark
MHELP A sequence symbol or space Absolute expression, binary, or decimal options
MNOTE A sequence symbol or space A severity code, followed by a comma, followed by a character string enclosed in apostrophes. Double-byte characters are permitted if the DBCS assembler option is specified.
OPSYN
An ordinary symbol
 
 
 
 
An operation code mnemonic
A machine instruction mnemonic
or an operation code defined by
a previous macro definition or
OPSYN instruction
 
Space
ORG A sequence symbol or space A relocatable expression or space
POP5 A sequence symbol or space One or more operands, separated by commas
PRINT5 A sequence symbol or space One or more operands, separated by commas
PUNCH5 A sequence symbol or space A 1-to-80-character string enclosed in apostrophes. Double-byte characters are permitted if the DBCS assembler option is specified.
PUSH5 A sequence symbol or space One or more operands, separated by commas
REPRO5 A sequence symbol or space Taken as a remark
RMODE Any symbol or space 24, 31, 64, or ANY
RSECT Any symbol or space Taken as a remark
SETA A SETA symbol An arithmetic expression
SETAF A SETA symbol An external function module, and the arithmetic expressions it requires, separated by commas
SETB A SETB symbol A 0 or a 1, or a logical expression enclosed in parentheses
SETC A SETC symbol A type attribute, a character expression, a substring notation, or a concatenation of character expressions and substring notations. Double-byte characters are permitted if the DBCS assembler option is specified.
SETCF A SETC symbol An external function module, and the character expressions it requires, separated by commas
SPACE5 A sequence symbol or space An absolute expression
START Any symbol or space An absolute expression or space
TITLE3,5 A 1-to-8-character string, a variable symbol, a combination of character string or variable symbol, a sequence symbol, or space A 1-to-100-character string enclosed in apostrophes. Double-byte characters are permitted if the DBCS assembler option is specified.
USING A symbol or space Either a single absolute or relocatable expression or a pair of absolute or relocatable expressions enclosed in parentheses and followed by 1 to 16 absolute expressions, separated by commas, or followed by a relocatable expression
WXTRN5 A sequence symbol or space One or more relocatable symbols, separated by commas
XATTR5 (z/OS and CMS) An external symbol One or more operands, separated by commas
     
Notes:
  1. SET symbols can be defined as subscripted SET symbols.
  2. Can only be used as part of a macro definition.
  3. See TITLE instruction for a description of the name entry.
  4. These instructions start a private section.
  5. These instructions can be specified before the first executable control section.
Table 2. Assembler statements
Instruction Entry Name Entry Operand Entry
ModelStatements1 and 2 An ordinary symbol, variable symbol, 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)
Prototype Statement3
Prototype Statement3
A symbolic parameter or space Zero or more operands that are symbolic parameters (separated by commas), and zero or more operands (separated by commas) of the form symbolic parameter, equal sign, optional standard value
Macro Instruction Statement3 An ordinary symbol, a variable symbol, or a combination of variable symbols and other characters that is equivalent to a symbol, any character string, a sequence symbol4 or space Zero or more positional operands (separated by commas), and zero or more keyword operands (separated by commas) of the form keyword, equal sign, value5
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 can be used to generate assembler language mnemonic operation codes (listed in Assembler instruction statements), except COPY, ICTL, ISEQ, and REPRO. Variable symbols cannot 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. Can 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.