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



endm

При вызове макроса вместо формального параметра ставится фактический. В программе из листинга 12.4 строка: LDisp hello

обрабатывается следующим образом: формальный параметр line всюду в теле макроса заменяется фактическим hello, и затем преображенное тело макроса вставляется в текст программы вместо строки LDisp hello. Так что ассемблер ви­дит перед собой три строки:

Поразрядные операции и адресация

Окончания цифeрных команд воздействуют на состояние 7 флагов. Большая частица сих флагов будет рассчитана после произведения арифметических операций с поддержкой функций сравнительного перевода, а также с участием команды IN (прекращение по восполнению). Воздействие циферных процедур на знаки обрисовано внизу.

CF (знак свитча): Если в следствии сложения проделывается перенос из большего разряда, символ свитча воздевается; в другом случае символ свитча обнуляется. При отнимании знак трансдукции воздевается, если свершается заем в больший разряд достигнутого результата; при отсутствии заема символ обновляется. Необходимо иметь в виду, что при происхождении знакового переноса SC == VJ (символ пополнения). Знак трансдукции CF имеет возможность употребляться для показа беззнакового восполнения.

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


назад далее