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



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-тичные и не имеющие знака незапакованные десятичные . Дискретные числа могут являться 2- и 64-разрядными. 10-тичные разряжённые числа заключают в разряде две цифры, незапакованные - 1.

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

Знаковые булевые цифры (натуральные) тоже могут являться 4- и 16-битными. Наиболее старший (наиболее левый) разряд знакового числа показывается как знак сего значения: 0 - ложь, 1 - истина. Отрицательные суммы строят в стандартном бинарном дополнительном коде. Оттого что старший байт симптоматичного числа используется для маркировки знака, интервал индикации 32-битных симптоматичных значений от - 130 до + 118. 16-битово системное значение представляется в диапазоне от - 32 768 до + 32 767. NULL описывается положительным значением. Для симптоматичных значений могут выполняться функции сложения, вычитания, увеличения и дробления.

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


назад далее