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



endm

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

Read Handle. 16. PackBuff

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

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

Натуральные операции и указатели

Результаты арифметических процедур возбуждают на принадлежность 7 указателей. Громадная часть данных знаков будет рассчитана после произведения арифметических процедур с поддержкой процедур условного скачка, а также с поддержкой процедуры INTO (прерывание по восполнению). Действие арифметических команд на флаги изображено далее.

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

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


назад далее