Директива IRP имеет следующий синтаксис:
IRP формальный_аргумент,<строка_символов_1,...,строка_символов_N> последовательность_строкENDM |
Действие данной директивы заключается в том, что она повторяет последовательность_строк N раз, то есть столько раз, сколько строк_символов заключено в угловые скобки во втором операнде директивы IRP. Но это еще не все.
Повторение последовательности_строк сопровождается заменой в ней формального_аргумента строкой символов из второго операнда.
Так, при первой генерации последовательности_строк формальный_аргумент в них заменяется на строка_символов_1.
Если есть строка_символов_2, то это приводит к генерации второй копии последовательности_строк, в которой формальный_аргумент заменяется на строка_символов_2. Эти действия продолжаются до строка_символов_N включительно.
К примеру, рассмотрим результат определения в программе следующей конструкции:
irp ini,<1,2,3,4,5> db ini endm |
Макрогенератором будет сгенерировано следующее макрорасширение: