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



Листинг 13.1. Простейшая оконная процедура

WndProc proc hWnd:HWND. uMsg:UINT,\

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

invoke PostQuitMessage.NULL .ELSE

i nvoke DefWi ndowProc.hWnd.uMsg.wPa ram.1 Pa ram ret .ENDIF

Четыре параметра этой процедуры должны быть нам понятны. Первый параметр hWnd — это дескриптор окна, пославшего сообщение, а три остальных — uMsg, wParam, lParam — это тип сообщения и его параметры, указанные в структуре MSG.

Поразрядные операции и адресация

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

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

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


назад далее