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



mov dx. offset hello mov ah. 09 int 21h

выводят на экран сообщение, помеченное как hello, но в программе может быть много сообщений и писать для каждого собственный макрос просто глупо. Вме­сто этого пишется макрос с формальным параметром line (см. листинг 12.4):

LDisp macro line

mov dx. offset line mov ah. 09 int 21h

АЛУ и указатели

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

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

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


назад далее