Chapter 11 Writing Macro Control Statements
Macro Definitions (macro, endm) 207
11.2 Macro Definitions (macro, endm)
Syntax
macro_name macro [dummy_parameter (, dummy_parameter)...]
macro_body
endm
NOTE: Up to 10 dummy parameters can be specified.
Functional description
A macro assigns a name to a single process that is used repeatedly in a program, simplifying the coding
of source statements. Macros must be defined before they are called.
The macro body is coded with multiple machine language instructions, directives, macro control
instructions, and conditional assembly control instructions. A macro definition is the assignment of a
name to the single process in the macro body.
A macro is called by coding its name in the operation field of a source statement. The assembler then
inserts the text of the macro body at that position. This is called macro expansion.
Macro definitions can have up to 10 dummy parameters. Dummy parameters are used within the macro
body to allow the caller to modify some of the expanded text.
Reference:
Subroutines have similar functions, but macros and subroutines differ on the following
points.
1) Macro expansion actually writes the macro body's machine language code in the
object file each time the macro is called at that call's position. For subroutines, the
subroutine body exists at one location in the program.
2) By using parameters, macro expansion allows the programmer to change the
expanded machine language instructions each time the macro is called. For
subroutines, the process cannot be changed.