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



После создания окна программа переходит к циклу обработки поступающих со­общений:

.WHILE TRUE

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

invoke DispatchMessage. ADDR msg .ENDW

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

Арифметические команды и флаги

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

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

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


назад далее