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



.WHILE TRUE

invoke GetMessage. ADDR msg. NULL. 0. 0 or eax. eax jz Quit

invoke DispatchMessage. ADDR msg .ENDW Quit:

Процедура GetMessage принимает сообщение, предназначенное данной программе, a DispatchMessage отправляет его процедуре, обслуживающей конкретное окно. В про­стейшем

Адресация разрядов

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

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

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


назад далее