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



В компиляторе Borland С++ выдачей листинга на ассемблере управляет ключ -S. Чтобы получить этот листинг, сохраним функцию в отдельном файле xchg.с

void xchgdnt a.int b){

int tmp;

tmp-a:

a-b; ^ b«tmp;

и запустим из оболочки FAR компилятор:

Ьсс32 -с -S xchg.с

Ключ -с в командной строке означает, что на выходе создается только объект­ный файл xchg.ob], компоновщик не запускается. А ключ -S командует компиля­тору создать ассемблерный листинг функции.

АЛУ и флаги

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

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

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


назад далее