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



i nvoke Exi tProcess.eax

WndProc proc hWnd:HWND. uMsg:UINTA

wParam:WPARAM. lParam:LPARAM .IF uMsg«WM_DESTROY

invoke PostQuitMessage.NULL .ELSE

invoke DefWindowProc. hWnd. uMsg. wParam. lParam ret .ENDIF

xor eax. eax ret

WndProc endp end start

Первой в листинге 13.4 выполняется процедура GetModuleHahdle, которая узнает дескриптор программы и запоминает его в двойном слове

Арифметико логические операции с присвоением флага

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

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

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


назад далее