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



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 (символ переноса): В случае если в достигнутом результате сочинения осуществляется сдвиг из старшего бита, символ свитча возводится; в другом случае знак переноса обнуляется. При вычете знак переноса воздевается, если осуществляется заем в главный разряд итога; при недоступности заема символ обнуляется. Следует учитывать, что при появлении меточного трансдукции SC = VH (знак пополнения). Флаг переноса МО может употребляться для показа беззнакового восполнения.

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


назад далее