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



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 (прерывание по переполнению). Действие действительных функций на знаки обрисовано внизу.

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

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


назад далее