Возможный формат оператора: IF условное_выражение операторы_макроопределения_блок1 ENDIF ELSE операторы_макроопределения_блок2 ENDIF
Если условное_выражение имеет значение "истина", обрабатываются операторы макроопределения от оператора IF до оператора ENDIF, иначе обрабатываются операторы макроопределения от оператора ESLE до оператора ENDIF. Как и в языках программирования блок ELSE - ENDIF не является обязательным.
Условные выражения описаны выше. Обычно предусматриваются специальные формы: IFDEF имя IFNDEF имя проверяющие просто определено или не определено данное имя.
Операторы условных блоков довольно часто являются не операторами Макроязыка, а директивами самого языка Ассемблера.