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



Ассемблер

Александр Крупник

Полезности

Управление потоком

Нужно думать не о том, что нам может приго­диться, а только о том, без чего мы не сможем обойтись.

Джером К. Джером. Трое в лодке, не считая собаки

В этой главе пойдет речь именно о том, без чего большинство программистов может обойтись. Но не обходится. Это различные «улучшения» инструкций про­цессора, предлагаемые ассемблером.

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

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

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

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


далее