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



2. Создается функция на языке ассемблера xchg.asm. Как принять параметры внутри функции и какие регистры сохранить, подскажет компилятор, если создать «муляж» функции на языке Си и получить ассемблерный листинг.

Оба файла передаются компилятору bcc32 main.с hchg.asm, который создаст файл main.exe. Ну а дальше начинается самое главное: нужно так подобрать инструк­ции процессора, чтобы они выполнялись быстрее созданных компилятором языка высокого уровня.


Для каждого процессора фирмы Intel эта задача реша­ется по-своему, потому что время выполнения одной и той же инструкции у разных процессоров различно. Чтобы справиться с этой задачей, нужно хорошо знать устройство процессоров и того, что их окружает. Ведь скорость выполне­ния программ часто определяется не самим процессором, а его взаимодействием с компьютерной памятью и внешними устройствами (жесткими дисками, порта­ми USB и т. д.). Но все это — тема других, гораздо более толстых, книг.

Методики адресации разрядов

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

CF (знак переноса): Ежели в результате сбора проделывается перенос из главного бита, флаг переноса взводится; в противном случае флаг переноса опустошается. При сбавке флаг переноса взводится, в случае если совершается заем в больший байт итога; при отсутствии взятия знак обнуляется. Необходимо помнить, что при появлении симптоматичного свитча SC == VJ (символ пополнения). Знак свитча CF имеет возможность употребляться для показа беззнакового восполнения.

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


назад