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



Листинг 12.3. Организация цикла с помощью директив .while .endw

mov есх. 10 .WHILE есх !-0

push есх

push edx

invoke wsprintf. ADDR buf. ADDR ifmt. edx invoke WriteConsoleA. stdout. ADDR buf. \

BSIZE. ADDR cWritten. NULL invoke WriteConsoleA. stdout. ADDR crlf. \

2. ADDR cWritten. NULL pop edx i nc edx pop ecx dec ecx .ENDW

Перед циклом .WHILE в регистр ecx посылается число 10

АЛУ и указатели

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

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

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


назад далее