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



По сравнению с циклом, организован­ном директивой .WHILE, здесь все наоборот: цикл прекращается, когда условие в директиве .UNTIL истинно (в нашем примере — когда есх обратится в ноль).

Задача 12.1. Посмотрите с помощью отладчика OllyDbg, как ассемблер реали­зует циклы .WHILE .ENDW и .REPEAT .UNTIL.

АЛУ и флаги

Результаты действительных команд оказывают воздействие на принадлежность 7 джокеров. Большая часть этих джокеров может быть рассчитана после произведения циферных команд с помощью функций сравнительного перехода, и вдобавок с помощью команды CIN (прерывание по заполнению). Действие действительных команд на флаги обрисовано далее.

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

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


назад далее