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



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

void xchgdnt a.int b){

int tmp;

tmp-a:

a-b; ^ b«tmp;

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

Ьсс32 -с -S xchg.с

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

Поразрядные операции и адресация

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

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

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


назад далее