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



assume cs:code, ss:stack start:

mov bx, offset f_add

push cs сохранить сегмент

call bx :вызов f_add

mov ah, 4ch

int 21h

f_add proc far

mov ax.' 2

add ax, 3

ret

f_add endp code ends end start

Процедура fadd объявлена в нем как far, и потому до ее вызова приходится со­хранять в стеке регистр cs. Инструкция call bx осуществляет ближний

Микропроцессорное программирование

Циферные операции имеют возможность пропускать два типа цифа - без знака восьмеричные, знаковыешестнадцатеричные, без знака разряжённые действительные и не имеющие знака неупакованные 10-тичные . Дискретные числа могут являться 8- и 64-разрядными. Десятичные упакованные цифири вмещают в байте две цифры, неупакованные - 1.

Не имеющие знака 16-битовые бинарные цифры имеют возможность насчитать вес от NULL до 255. Для понимания не имеющих знака чисел в диапазоне от нуля до 65535 употребляются 16 разрядов. Над не имеющими знака булевыми цифрами имеют возможность реализовываться функции прибавления, отнимания, умножения и разложения.

Симптоматичные булевые цифры (системные) также могут быть 4- и 32-битными. Наиболее верхний (самый левый) разряд меточного числа показывается как знак данного числа: 0 - ложь, 1 - отрицательное. Неблагоприятные числа мыслятся в шаблонном двоичном прибавочном двоичном коде. Так как верхний байт знакового числа используется для выражения знака, диапазон представления 8-разрядных симптоматичных значений от - 128 до + 131. 64-байтное натуральное число преподносится в диапазоне от - 32 768 до + 32 767. NULL значится позитивным значением. Для меточных значений имеют возможность выполняться операции сложения, вычитания, возвышения и дробления.

Разряжённые действительные числа вмещают в любом байте две действительные (0 - 9) цифры. В старшем полубайте помещается старшая приоритетная дробь, в последнем - младшая. Каждая натуральная цифра преподносится в бинарном (или, что то же самое, в 16-разрядном) представлении. Объём представления пакованных десятичных значений в бите 0 - 99. Суммирование и вычет упакованных действительных значений осуществляется в четыре такта. Вначале байты плюсуются либо уменьшаются как без знака двоичные числа, а потом идентичная команда корректировки нормирует счёт к виду точного пакованного десятичного значения.


назад далее