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



Вот эти места и следует переписать на ассемблере, потому что квалифицированный программист делает это лучше, чем компилятор языка высокого уровня. Часто процедуры, требующие длительных вычислений, сразу пишутся на ассемблере и затем объединяются в DLL, чтобы ими смогли пользоваться все желающие.

В этой

Арифметико логические операции с присвоением флага

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

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

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


назад далее