Assembler - язык неограниченных возможностей


              

Иногда директивы условного ассемблирования используются


IFDIF <арг1>,<арг2>/ELSEIFDIF <арг1>,<арг2> — если аргументы отличаются (с различием больших и маленьких букв);

IFDIFI <арг1>,<арг2>/ELSEIFDIFI <арг1>,<арг2> — если аргументы отличаются (без различия больших и маленьких букв);

IFIDN <арг1>,<арг2>/ELSEIFIDN <арг1>,<арг2> — если аргументы одинаковы (с различием больших и маленьких букв);

IFIDNI <арг1>,<арг2>/ELSEIFIDNI <арг1>,<арг2> — если аргументы одинаковы (без различия больших и маленьких букв).

Иногда директивы условного ассемблирования используются для того, чтобы прервать ассемблирование программы, если обнаружилась какая-нибудь ошибка. Для таких случаев предназначены директивы условной генерации ошибок.

if $ gt 65535 ; Если адрес вышел за пределы сегмента. .err endif

Встретив директиву .ERR, ассемблер прекратит работу с сообщением об ошибке. Аналогично командам условного ассемблирования существуют модификации команды .ERR:

.ERR1 — ошибка при первом проходе ассемблирования;

.ERR2 — ошибка при втором проходе ассемблирования;

.ERRE выражение — ошибка, если выражение равно нулю (ложно);

.ERRNZ выражение — ошибка, если выражение не равно нулю (истинно);

.ERRDEF метка — ошибка, если метка определена;

.ERRNDEF метка — ошибка, если метка не определена;

.ERRB <аргумент> — ошибка, если аргумент пуст (эта и все следующие директивы используются в макроопределениях для проверки параметров);

.ERRNB <аргумент> — ошибка, если аргумент не пуст;

.ERRDIF <арг1>,<арг2> — ошибка, если аргументы различны;

.ERRDIFI <арг1>,<арг2> — ошибка, если аргументы отличаются (сравнение не различает большие и маленькие буквы);

.ERRIDN <арг1>,<арг2> — ошибка, если аргументы совпадают;

.ERRIDNI <арг1>,<арг2> — ошибка, если аргументы совпадают (сравнение не различает большие и маленькие буквы).


Содержание  Назад  Вперед