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



Quit macro

mov ah. 4ch int 21h

endm

LDisp macro line

mov dx. offset line mov ah. 09 int 21h

endm .8086

.MODEL small option casemap:none .stack 100 .data

hello BYTE "He могу молчать!". Odh. Oah. Ё$Ё

.code

start:

mov dx. @stack mov ss. dx

mov dx. @data

mov ds. dx ;регистр данных LDisp hello :вывод на экран

Quit ;уходим

end start

Макрос Quit определяется в самом начале программы так:

Натуральные операции и указатели

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

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

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


назад далее