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



Сравнение простейшей программы на Си и точно такой же на ассемблере пока­жет, что соответствие между ассемблером и Си почти однозначное, ведь про­цедуры Windows API одни и те же для любого языка. Но все же язык Си удоб­нее для изучения Windows, чем ассемблер.

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

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

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

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

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


назад далее