Руководство по ассемблеру



endm

Если вызвать этот макрос строкой:

Read Handle. 16. PackBuff

то формальные параметры заменятся фактическими, и 16 байт из файла, чей хендл хранится в переменной Handle, будут прочитаны в буфер PackBuff.

Иногда при вызове макроса не хочется указывать все параметры. В нашем при­мере может случиться так, что хендл уже хранится в bx прямо перед вызовом макроса. На этот случай существует директива ifnf (If Not Blank — если не пуст). С ее помощью макрос можно переписать следующим образом:

Команды АЛУ и присвоение флагов

Окончания арифметических операций возбуждают на принадлежность 6 знаков. Громадная частица этих флагов может быть рассчитана после выполнения действительных процедур с участием функций сравнительного скачка, а также с поддержкой команды CIN (прекращение по переполнению). Влияние циферных команд на указатели обрисовано далее.

CF (флаг свитча): В случае если в результате сложения проделывается перенос из старшего бита, символ свитча возводится; в другом случае символ трансдукции опустошается. При сбавке знак свитча взводится, ежели проделывается заем в больший разряд счёта; при нехватке взятия флаг обновляется. Следует иметь в виду, что при появлении симптоматичного свитча ВА = OF (символ переполнения). Знак трансдукции АР может употребляться для воспроизведения беззнакового заполнения.

АМ (флаг добавочного трансдукта): Ежели в результате сложения осуществляется перенос из меньшого полубита в верхний, символ добавочного свитча подымается; в противном случае символ обнуляется. При вычитании флаг прибавочного свитча подымается, в случае если свершается заем из главного полубита в меньший; при недостатке заимствования символ обновляется.


назад далее