Professional Documents
Culture Documents
ASM
Version 1.0
Assembler/Session 1
Course Title :
ASSEMBLER LANGUAGE
Duration : 5 Half - DAYS
Assembler/Session 1
Objectives Objectives
Assembler/Session 1
COURSE SCHEDULE
Introduction
SESSION 1 Day 1
SESSION 2 Day 1
SESSION 3 Day 2
Addressing
Machine Instructions
Assembler/Session 1
COURSE SCHEDULE
SESSION 4 Day 3
SESSION 5 Day 3
Program Sectioning
Assembler Directives
Assembler/Session 1
COURSE SCHEDULE
SESSION 8 Day 4 SESSION 9 Day 5 Macro Language Other Topics
Assembler/Session 1
Assembler Language
SESSION 1
Assembler/Session 1
INTRODUCTION
Objectives
An assembler language is a symbolic form of machine language Assembler translates assembler language program to machine language An assembler program consists of many statements In general, one assembler language statement corresponds to one machine language instruction
Assembler/Session 1
STATEMENT FORMAT
1 label e.g.. INIT1 10 operation
Objectives
16 operands
30 comments
LA R5,4
;INITIALISE REGISTER 5
Rules for choosing labels: maximum 8 characters Alphabets, digits, @, #, $ First character should not be a digit label should begin in column 1
Assembler/Session 1
STATEMENT FORMAT
Objectives
Operation One of the 200 M/C instruction mnemonics Operand can be a register or memory location Continuing a statement Place any character in column 72 of the line to be continued Continue the statement from column 16 of next line Maximum 2 continuation lines for a statement
Assembler/Session 1
STATEMENT FORMAT
Objectives
Assembler/Session 1
TYPES OF INSTRUCTIONS
Objectives
Assembler/Session 1
Objectives
Registers are storage areas inside the processor Advantages: - No need to retrieve data from main storage (saves time) - Shared resource that allows inter communication between programs
REGISTERS
Assembler/Session 1
Objectives
General purpose registers: * 16 registers available * Numbered 0 - 15 * Holds 32 bits (4 bytes) of data
REGISTERS
Floating point registers: * 4 registers available * Numbered 0,2,4,6 * Holds 64 bits (8 bytes) of data
Note : The registers 0, 1, 13, 14 and 15 are reserved for special purpose
Assembler/Session 1
DATA REPRESENTATION
Objectives
Binary fields - Always fixed in length, either 2 or 4 bytes (Fullword or Halfword) - Negative numbers stored in 2s complement form
Examples: A DC B DC
H295
01 27
H-75
FF 35
Assembler/Session 1
DATA REPRESENTATION
Objectives
Characters - One byte (EBCDIC form) - Character representation of decimal digits is called Zoned Decimal (first nibble is zone and next is digit) Zone digit
0-9 +, - , blank Zone + Blank Code C D F
Assembler/Session 1
DATA REPRESENTATION
Objectives
Assembler/Session 1
DATA REPRESENTATION
Objectives
Assembler/Session 1
Objectives
Addressing Operands Register addressing Base, displacement addressing Base, index and displacement addressing
Assembler/Session 6
INSTRUCTION FORMATS
RR opcode R1 R2
Objectives
B1 D1
SI
opcode
I2
SS
opcode
B1
D1
B2
D2
SS
opcode L1 L2 B1
D1
B2
D2
RX
opcode R1 X2 B2
D2
RS
opcode R1 R3 B2
D2
Assembler/Session 2
Assembler Language
SESSION 2 Addressing
Assembler/Session 2
STORAGE DEFINITIONS
Objectives
Two ways to define fields : 1. Define a field and initialise the data in it using the DC assembler directive 2. Define a field without initialising using the DS assembler directive
Assembler/Session 2
STORAGE DEFINITIONS
Objectives
Format:
label {DS/DC} dtLnvalue
where :
label d t Ln : Label used to name the field (optional) : Duplication factor (optional) : Type of data ( required) : The letter L followed by the length of the field in bytes (optional) value : Represents the value enclosed in apostrophes
Assembler/Session 2
STORAGE DEFINITIONS
Objectives
CABC EF 3CL2 H29 F-10 X03 PL4-72
Examples:
ALPHA FLDS H1 F2 F1 F3 DC DS DC DC DC DC
Note : for character constants truncation or padding is to the right and for almost all others it is to the left.
Assembler/Session 2
STORAGE DEFINITIONS
Objectives
Alignment None None None Full word Half word Full word Double word Double word None
DC TYPES
Type C X B F H E D L P Implied Length 4 2 4 8 16 Data Representation Character Hex digits Binary digits Binary Binary Floating point Floating point Floating point Packed decimal
Assembler/Session 2
STORAGE DEFINITIONS
Objectives
COBOL
Assembler/Session 2
STORAGE DEFINITIONS
Objectives
Literals
A literal is a constant preceded by an equals sign =.
Assembler/Session 2
Objectives
Exercise 1 Q 1 and Q2. 2.What will happen in the following cases DC CL5123 DC CL5123456 DC XA1245 DC XL2A1245 DC XL5A1245 DC F19 DC FL1513
Assembler/Session 2
Objectives
EQU (Assembler directive) The EQU statement is used to associate a fixed value with a symbol R4 EQU 4 DRBACK EQU OUT+25
Assembler/Session 2
ESTABLISHING ADDRESSABILITY
Objectives
By establishing the addressability of a coding section, you can refer to the symbolic addresses defined in it in the operands of machine instruction Assembler will convert the implicit addresses into explicit addresses (base - displacement form)
Assembler/Session 2
ESTABLISHING ADDRESSABILITY
Objectives
Specify a base address from which the assembler can compute displacements Assign a base register to contain this base address Write the instruction that loads the base register with the base address Note: The base address should remain in the base
register throughout the execution of the program
Assembler/Session 2
ESTABLISHING ADDRESSABILITY
Establishing Base Register
Objectives
The USING and DROP assembler instructions enable one to use expressions representing implicit addresses as operands of machine instruction statements, leaving the assignment of base registers and the calculation of displacements to the assembler
USING - Use Base Address Register - allows one to specify a base address and assign one or more base registers
Assembler/Session 2
ESTABLISHING ADDRESSABILITY
Objectives
To use the USING instruction correctly, one should know : which locations in a coding section are made addressable by the USING statement where in a source module you can use these established addresses as implicit addresses in instruction operands Format: symbol USING base address,basereg1| basereg2|,.. e.g. USING BASE,9,10,11 USING *,12
Assembler/Session 2
ESTABLISHING ADDRESSABILITY
Objectives
Range of a USING instruction: The range of a USING instruction is the 4096 bytes beginning at the base address specified in the USING instruction Domain of a USING instruction The domain of a USING instruction begins where the USING instruction appears in a source module to the end of the source module
Assembler/Session 2
ESTABLISHING ADDRESSABILITY
The assembler converts implicit address references into their explicit form: if the address reference appears in the domain of a USING instruction if the addresses referred to lie within the range of the same USING instruction Guideline: Specify all USING instructions at the beginning of the source module Specify a base address in each USING instruction that lies at the beginning of each control section
Objectives
Assembler/Session 2
RELATIVE ADDRESSING
Objectives
Relative addressing is the technique of addressing instructions and data areas by designating their location in relation to the location counter or to some symbolic location ALPHA LR CR BCR AR 3,4 4,6 1,14 2,3
ALPHA+2 or BETA-4
BETA
Assembler/Session 3 & 4
Assembler Language
SESSION 3 & 4 Machine Instructions
Assembler/Session 3 & 4
Objectives
Move Character Instruction (MVC) Copy data from one place in memory to another Format : MVC operand1,operand2 S1(L), S2 - implicit - explicit
D1(L,B1),D2(B2) e.g...
MVC
INPUT(5),OUTPUT
Assembler/Session 3 & 4
Objectives
Move Immediate Instruction (MVI) Can move only one byte of constant data to a field Format : MVI operand1,operand2 S1,I2 - implicit
D1(B1),I2
e.g.. MVI CTL,CB
- explicit
Assembler/Session 3 & 4
Objectives
PAD+6(4),=CL4 CL10
FLDB DS
Assembler/Session 3 & 4
Objectives
Comparison Instructions Compares 2 values - the values are found in fields, in registers or in immediate data CLC - Compare logical character e.g. CLC FLDA,FLDB FLDA,CK
Assembler/Session 3 & 4
Objectives
Exercise 2 Q1 and Q2 2. What will be the effect of the following instructions : MVI OUTAREA,C
MVC OUTAREA+1(132),OUTAREA
OUTAREA DS 133C
Assembler/Session 3 & 4
BINARY INSTRUCTIONS
Objectives
STH 7,HALF
Assembler/Session 3 & 4
BINARY INSTRUCTIONS
Objectives
Note : Do not mix up the instruction types and field types e.g.
LH L ST RES DS 5,FULL - right half of Reg 5 gets 1st 2 bytes at FULL 6,HALF - Reg 6 gets 4 bytes starting from HALF 3,RES H H15 F8 - 4 bytes of reg 3 are stored starting from RES
HALF DC FULL DC
Assembler/Session 3 & 4
BINARY INSTRUCTIONS
Objectives
Fixed-point overflow occurs when the sum will not fit in the receiving register
Type R-X e.g.
A 5,FULL
AH
AR
6,HALF
7,3
Assembler/Session 3 & 4
BINARY INSTRUCTIONS
Objectives
Type R-X
e.g.
S
SH SR
5,FULL
6,HALF 7,3
Assembler/Session 3 & 4
BINARY INSTRUCTIONS
Objectives
Assembler/Session 3 & 4
op1,op2
Function : The value in OP2 is multiplied by the value in the odd register of the even-odd pair and the result placed in even-odd registers
(For half word format : The half word specified in OP2 is multiplied by the value in OP1 and result stored in OP1.)
Assembler/Session 3 & 4
BINARY INSTRUCTIONS
Objectives
op1,op2
R-X / R-R
Op1 : An even numbered register. It refers to an even-odd pair of registers. The pair holds the double word to be divided. The even register receives the remainder; the odd register receives the quotient.
e.g.
4,FULL
Assembler/Session 3 & 4
Objectives
A branch causes execution to continue at some other instruction in the program Branch conditions : B, BH, BL, BE, BNH, BNL, BNE, BZ, BNZ, BM, BNM, BO, BNO e.g : CLI FLDA,CK BNL GOOD
BRANCHING
Assembler/Session 3 & 4
Objectives
condition code is an extremely important intermediary between arithmetic instructions and conditional branch instructions very important in implementing control structures
Zero < Zero >Zero Overflow
0 1 2 3
Assembler/Session 3 & 4
Format
BC
M1,S2
e.g.
BC
will cause a branch to the instruction named BRPTA, if at the time the instruction is executed, the condition code is 0 or 3.
Assembler/Session 3 & 4
BIT MANIPULATIONS
Objectives
S-S OC NC XC R-R OR NR XR O N X
Operation OR AND
S-I OI NI
R-X
Exclusive OR XI e.g... OI NR
FLDA,X0F 5,7
9,FULL
Assembler/Session 3 & 4
BIT MANIPULATIONS
Objectives
TM
S1,I2
Function : The bits of S1 ( a single byte) are tested under the control of the mask in I2 and condition code is set as all zeroes, all ones or mixed e.g. TM EMP,B00000101
BNM NEXT
Assembler/Session 3 & 4
BIT MANIPULATIONS
Objectives
SRL, SRDL Right logical SLA, SLDA Left arithmetic (sign bit not affected) SRA, SRDA Right arithmetic (& condition code set) e.g. SLL 5,1
SRDA
4,5
Assembler/Session 3 & 4
Objectives
S1(L),S2 or S1,S2
Format :
e.g.
TR
WORK,XTABLE
Assembler/Session 3 & 4
BINARY CONVERSIONS
Objectives
CVB
5,DOUBLE
Assembler/Session 3 & 4
BINARY CONVERSIONS
Objectives
2. Conversion from binary (CVD) Format: CVD operand1,operand2 operand1 : Register operand2 : a double word e.g. CVD 5,DOUBLE
Assembler/Session 3 & 4
TABLE PROCESSING
Objectives
DS L 6F
4,RATE+8
Assembler/Session 3 & 4
Objectives
e.g.
REPEAT
LH EQU
9,=H12 *
..
BCT 9,REPEAT
Assembler/Session 3 & 4
Branch on index high and branch on index low or equal (BXH and BXLE)
Objectives
op1,op2,op3
Format:
BXLE BXH
op1 : A register known as the index register op2 : A even-odd pair of registers
Assembler/Session 3 & 4
Function : First, the value in the increment Objectives register is added to the indexed register. Second, the branch is taken only when the value in the index register is lower than or equal to / higher than the value in the limit register Useful when the same register is to be used as the count and index register
Assembler/Session 3 & 4
BXLE
BXH e.g...
DO UNTIL repetitions
DO WHILE repetitions
LH LH LH 7,=H0 2,=H2 3,=H18 index increment amount the limit
Objectives
...
BXLE 7,2,REPEAT
Assembler/Session 3 & 4
BNZ ERROR
Assembler/Session 3 & 4
USING EQUATES
Objectives
To associate a fixed value with a symbol Useful for length and relative address calculation e.g.
TABLE DS DC DC ... TBLEND TBLSIZE EQU * EQU TBLEND-TABLE 0H C01 C02
Assembler/Session 3 & 4
USING EQUATES
Can be
1. To assign single absolute values to symbols. 2. To assign the values of previously defined symbols or expressions to new symbols, thus allowing you to use different mnemonics for different purposes. 3. To compute expressions whose values are unknown at coding time or difficult to calculate. The value of the expressions is then assigned to a symbol.
Assembler/Session 5
Assembler Language
SESSION 5 Program Sectioning
Assembler/Session 5
Objectives
Code a CSECT segment before any statement that affects the location counter END statement is required as the last statement in the assembly
Assembler/Session 5
CONTROL SECTIONS
Objectives
A source module can be divided into one or more control sections A control section is the smallest subdivision of a program that can be relocated as a unit
CONTROL SECTIONS
At coding time, establish the addressability of each control section within the source module, and provide any symbolic linkages between control sections that lie in different source modules. Initiated by using the START or CSECT instruction
Assembler/Session 5
CONTROL SECTIONS
Any instruction that affects the location counter, or uses its current value, establishes the beginning of the first control section.
Objectives
CONTROL SECTIONS
Format of CSECT:
Name
Any symbol
Operation
CSECT
Operand
Not required
or blank
Assembler/Session 5
DUMMY SECTIONS
Objectives
A dummy control section is a reference control section that allows you to describe the layout of data in a storage area without actually reserving any virtual storage.
DUMMY SECTIONS
Use the DSECT instruction to initiate a dummy control section or to indicate its continuation. Format of DSECT: Name
Any symbol or blank
Operation
DSECT
Operand
Not required
Assembler/Session 5
DUMMY SECTIONS
Objectives
Reserve a storage area for the unformatted data Ensure that this data is loaded into the area
at execution time
DUMMY SECTIONS
Ensure that the locations of the symbols in the dummy section actually correspond to the locations of the data being described Establish the addressability of the dummy section in combination with the storage area
You can then refer to the unformatted data symbolically by using the symbols defined in the dummy section.
Assembler/Session 5
ASMBLY2
BEGIN
CSECT
BALR USING
Objectives 2,0
*,2
...
USING CLI BE ... INAREA,3 INCODE,C'A' ATYPE
ATYPE
MVC
MVC ..
WORKA,INPUTA
WORKB,INPUTB
WORKA WORKB
DS DS ...
CL20 CL18
INAREA
DSECT
INCODE
INPUTA INPUTB
DS
DS DS
CL1
CL20 CL18
... END
Assembler/Session 5
Assembler Directives
Objectives
TITLE : To provide headings for each page of the assembly listing of the source modules. EJECT : To stop the printing of the assembler listing on the current page, and continue the printing on the next page. ORG : To reset the location counter
Assembler Directives
LTORG : A literal pool is created immediately after a LTORG instruction or, if no LTORG instruction is specified, at the end of the first control section.
Assembler/Session 6
Assembler Language
SESSION 6 Writing a complete program
Assembler/Session 6
Objectives
Always calling program provides a savearea of 18 words long used for storage of registers
Savearea address passed through register 13
Assembler/Session 6
2
3
SAV+4
SAV+8
4
5 6
SAV+12
SAV+16 SAV+20 ...
Contents of Register 14
Contents of Register 15 Contents of Register 0
18
SAV+68
Contents of Register 12
Assembler/Session 6
Objectives
1.Save contents of registers 0-12,14 & 15 in calling programs save area 2.Establish base register
3.Store calling programs save area in the 2nd word of its own save area
Assembler/Session 6
Objectives
(The addresses in the 3d word of save area establish a chain of register save areas. This will be useful in reading the dump when program crashes).
Assembler/Session 6
Objectives
R14,R12,12(R13)
BALR R12,0
USING *,R12 ST LR LA ... ST R13,SAVOWN+4 store calling programs save area R14,R13 R13,SAVOWN R13,8(R14) Reg 13 contains current progs SA
Assembler/Session 6
Objectives
Assembler/Session 6
Objectives
Program Exit
R13,4(R13)
LM R14,R12,12(R13)
BR R4
Assembler/Session 6
where SUBENTRY is the entry address (usually the CSECT name) of the subroutine
Assembler/Session 6
Assembler/Session 6
Objectives The standard interface requires that addresses of parameters be placed in a block of storage, and the address of the block be loaded into register 1 as the subroutine is called
Both input and output parameters are treated the same way e.g... ADDS
DC DC A(T) A(U)
DC
LA
A(V)
R1,ADDS
Assembler/Session 6
R1
Objectives
Parmlist
Main storage
Addr of parmlist
parm3
Addr of parm1
Addr of parm2 parm1
Addr of parm3
parm2
Assembler/Session 6
L
L
R3,4(,R1)
R8,0(,R3)
Assembler/Session 6
Objectives
R0 : Contains single word output of a subroutine R1 : contains the address of an area of main storage that contains addresses of parameters
Assembler/Session 6
Objectives
Objectives
RANDOM STM RR14,R12,12(R13) BALR R12,0 USING *,R12 L M R7,RN R6,=F65541
ST
LR LM
R7,RN
R0,R7 R1,R12,24(R13)
BR
RN DC
R14
F8193
Assembler/Session 6
Subroutine RDIGIT
RDIGIT STM R14,R12,12(R13)
BALR USING ST R12,0 *,R12 R13,SAV+4
Objectives
R13,SAV
LA
... L BALR
R15,RANDAD R14,R15
...
L LM LM R13,SAV+4 R14,R15,12(R13) R1,R12,24(R13)
BR
SAV RANDAD DC DS
R14
18F
A(RANDOM)
Assembler/Session 6
Linkage Conventions
Objectives
Program divided into 2 or more source modules Source module divided into 2 or more control sections
For link-editing, a complete object module or any individual control section of the object module can be specified
Assembler/Session 6
Objectives
Assembler/Session 6
provide A-type or V-type address constants to reserve storage for addresses represented by external symbols
In the external source modules, identify these symbols with the ENTRY instruction (name entry of a START or CSECT instruction is automatically identified as an entry symbol) External symbol dictionary
Assembler/Session 6
e.g.
Objectives program A
EXTRN TABLEB
WXTRN
TABADR DS
TABLEB
V(TABLEB)
program B
ENTRY TABLEB
TABLEB
DS
...
Assembler/Session 6
Objectives
An address constant is a main storage address contained in a constant A V-type constant is the value of an external symbol - a relocatable symbol that is external to the current control section. Used for branching to locations in other control sections
e.g ADCON
GSUBAD
L DC
DC
5,ADCON A(SOMWHERE)
V(READATA)
Assembler/Session 7
Assembler Language
SESSION 7 Assemble and Link Program
Assembler/Session 7
Processing of Instructions
Time/ Activity Code M/C instruc. source m/c instruc. Preassembly Refer to macro instruc. DC,DS
Macro Instr.
Assembly
LKED Prog fetch
object code
Execution
data area
form data
area in load mod
Assembler/Session 7
Objectives
EXEC PGM=pgmname,PARM=
When program gets control :
Register 1 contains the address of a fullword on a fullword boundary in programs address space the high order bit of this fullword is set to 1
(this convention is to indicate the last word in a variable length parameter list)
Bits 1-31 of the fullword contain the address of a 2-byte length field on a halfword boundary The length field contains a binary count of the no. of bytes in the PARM field which immediately follows the length field
Assembler/Session 7
COBOL to Assembler
CALL
ASMSUB(CHARSTRING);
Assembler/Session 8
Assembler Language
SESSION 8 Macro Language
Assembler/Session 8
Macros
Objectives
Assembler inserts the source statements in the program where the macro appears
A header statement
A prototype Model statements A trailer statement
Assembler/Session 8
Header statement:
Objectives MACRO
&TO,&FROM,&LENGTH
Prototype:
&name
MOVE
Model statements:
Assembler/Session 8
Macro Instruction:
A statement containing the name of a macro when expanded, the symbolic parameters in the model statements are replaced by corresponding parameters from the macro instructions
Objectives
IC
SLL IC
®,&SV
®,8 ®,&SV+1
MEND
Assembler/Session 8
Objectives
binary (SETB)
character (SETC)
Assembler/Session 8
Format:
Label
symbol-name
SETB
SETC e.g. LCLA GCLA &A1 SETA &A2 SETA &A1 &A2 1 &A1+3
Assembler/Session 8
Attributes
Objectives
There are 6 attributes of a symbol or symbolic parameter : type, length, scaling, integer, count and number System variable symbols
&SYSINDX, &SYSDATE, &SYSTIME, &SYSECT, &SYSPARM, &SYSLOC
Assembler/Session 8
Conditional Assembly
The assembler can be made to branch and loop among assembler language statements using sequence symbols and the assembler instructions AIF and AGO
Objectives
Sequence symbol : Period followed by 1 to 7 alphabets or digits of which the first is a letter e.g. .Z23Ab
Assembler/Session 8
Format:
Label
Objectives
enclosed in parenthesis,
followed by seq symbol
A logical expression is composed of one or more relations or values of SETB symbols connected by logical connects AND, OR, AND NOT, OR NOT
A relation consists of 2 arithmetic expressions or 2 character expressions connected by a relational operator EQ, NE, LT, LE, GT, GE
Assembler/Session 8
e.g.
MACRO PSRCH
Objectives
&PARAMS,&STRING
GBLB &FOUND
LCLA &I &FOUND SETB 0
.LP
&I &FOUND
AIF
.E
MEND
Assembler/Session 9
Assembler Language
SESSION 9 Other Topics
Assembler/Session 8
uses DSECTs
has efficient code (LA R10, 4(0,R10 - A R10,=F4)
does not abnormally terminate due to user error provides meaningful error messages
Assembler/Session 8
Assembler/Session 8
Structured Programming
Objectives
Assembler/Session 9
the EX instruction is a R-X type instruction that directs the execution of an instruction called the subject instruction, which is addressed by the second operand the subject instruction is in effect a one-instruction subroutine
Objectives
The EXecute Instruction (contd...) The subject instruction is modified before execution (though not altered at its main storage location) : bits 8-15 of the instruction ORed with bits 24-31 of register R1 to form the second byte of the instruction actually executed e.g. Let reg 9 have the length of string to be moved
EX R9,VARMVC
Assembler/Session 9
Objectives
Exceptions and Interrupts Interrupts that result directly from attempts at invalid program execution are called program-check interrupts; identified by a code Interruption code 1 : Operation Interruption code 2 : Privileged operation Interruption code 4 : Protection Interruption code 5 :Addressing Interruption code 6 :Specification
DEBUGGING
Assembler/Session 9
Objectives
Exceptions and Interrupts (contd..)
DEBUGGING
Assembler/Session 9
Objectives
Reading dumps
DEBUGGING
In case of program check interruption, the first 2 digits of the completion code is 0C
DEBUGGING
Assembler/Session 9
Objectives
Reading dumps (contd...)
DEBUGGING
The register contents are the contents at the point of interruption (the instruction that caused the interrupt is usually the one just before the interrupt address given)
use address at interrupt and entry address to locate the instruction that caused the programcheck interruption
Assembler/Session 9
Objectives
Full and Partial dumps
DEBUGGING
//SYSUDUMP DD SYSOUT=A
SNAP macro
DEBUGGING
Examine register contents, PSW and listed entry point to find the portion of program being executed
Look at main storage dump to determine the data being used
Assembler/Session 9
SYSTEM MACROS
Objectives
Data Management Macros DCB - Construct a data control block OPEN - Logically connect a dataset CLOSE - Logically disconnect a dataset GET - Obtain next logical record (queued access) PUT access) Write next logical record (queued
READ - Read a block (basic access) WRITE - Write a block (basic access)
Assembler/Session 9
SYSTEM MACROS
Objectives
Supervisor Services Macros ABEND - Abnormally terminate a task CALL - Pass control to a control section GETMAIN - Allocate virtual storage FREEMAIN - Free virtual storage LOAD - Bring a load module into virtual storage
Assembler/Session 9
SYSTEM MACROS
Objectives
Assembler/Session 9
Objectives
CLOSE
(INFILE)
Assembler/Session 9
SYSTEM MACROS
Three forms :
Objectives
Standard form : Results in instructions that store into an inline parameter list and pass control to the required program List form : Provides asn out-of-line parameter list Execute form : Provides the executable instructions required to modify the out-of-line parameter list and pass control to the required program