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



Все дело в том, что параметры стандартных процедур чаще всего — двойные слова, и если бы, к примеру, поле Day занимало один байт, пришлось бы переписать его в четы­рехбайтовый регистр и лишь потом передать процедуре.

Задача 12.2. Напишите программу, которая показывает на экране дату, хра­нимую в структуре, состоящей из трех полей Day (байт), Month (байт), Year (слово).

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

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

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

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


назад далее