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



WM_DESTROY не возникает и всякое другое сообщение от­правляется стандартной процедуре DefWi ndowProc, в которой они и обрабатываются. Если же окно уничтожается, процедура PostQuitMessage генерирует сообщение WMJJUIT, которое встает в общую очередь, а затем направляется нашей процедуре GetMessage.

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

Арифметические команды и флаги

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

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

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


назад далее