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



Макросы

В программах часто повторяются одни и те же фрагменты, такие, например, как завершение работы в системе DOS:

mov ah. 4ch ;завершить программу

int 21h

Смысл этих строк довольно туманен, да и выписывать их каждый раз не хочет­ся. И было бы здорово заставить ассемблер при встрече какого-нибудь коротко­го, ясного слова, например Quit (выход), вставлять в текст программы две стро­ки, приведенные выше.

АЛУ и флаги

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

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

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


назад далее