マクロ呼び出し

MACRO 文で定義したマクロは、マクロ呼び出しを行って初めて実際のコードになります。

構文    mac    [a-args ,...]
例    PUTC    'A'
    COPY    MSG,BUF,12
    MAC    MP1,MP2,MP3
    MAC    MP1,,MP3

mac は、あらかじめ MACRO 文によって定義したマクロ名です。mac は通常の命令文のように使用できます。

a-args は、実パラメータです。通常はマクロの仮パラメータと同じ数だけ指定しますが、一部を省略することもできます。マクロ定義内の仮パラメータを実パラメータに置換した結果が、マクロ呼び出しの実効内容になります。実パラメータを省略すると、対応する仮パラメータは空の文字列に置換されます。

山形括弧(< >)

実パラメータを山形括弧で囲むこともできます。この場合は、山形括弧が除去された後で仮パラメータが置換されます。たとえば、「1,2」を 1 つの実パラメータとしてマクロに渡すには、「1」と「2」という 2 つの実パラメータであると解釈されることを避けるために、山形括弧を使って「<1,2>」と記述します。

たとえば、次のマクロを考えます。

TDB    MACRO    D
    DB    D
    DB    D
    ENDM

このマクロを「TDB <1,2,3>」と呼び出すと、その実効内容は次のようになります。

    DB    1,2,3
    DB    1,2,3

[目次]