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



Смысл процедуры WndProc (листинг 13.1) прост: ее интересует, живо ли подшефное ей окно. Если да — сообщения WM_DESTROY не возникает и всякое другое сообщение от­правляется стандартной процедуре DefWi ndowProc, в которой они и обрабатываются. Если же окно уничтожается, процедура PostQuitMessage генерирует сообщение WMQUIT, которое встает в общую очередь, а затем направляется нашей процедуре GetMessage.

Это сообщение (WM_QUIT) — особенное, и GetMessage отвечает на него тем, что воз­вращает ноль в регистре еах. Поэтому цикл .WHILE прекращается и программа за­вершает работу, переходя к метке QUIT.

Команды АЛУ и адресация

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

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

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


назад далее