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



Без всякого сомнения, самое сложное в этом примере — объявления переме! ных nearp и farp:

nearp WORD f_add farp DWORD f_add

Мы привыкли, что метка — это содержимое переменной. В этом нас, казалось бы, убеждает отрывок программы:

mov ах.digit :0000 2ЕА10800 MOV АХ.CS:[0008]

digit WORD 3 :0008 0300

после исполнения которого в регистре ах оказывается тройка

Команды микропроцессора

Числовые функции могут обрабатывать два типа чисел - не имеющие знака двоичные, меточныедвоичные, не имеющие знака упакованные десятичные и без знака распакованные 10-тичные . Бинарные тысячи могут быть 8- и 64-разрядными. 10-тичные уложенные числа вмещают в бите 2 ступени, незапакованные - одну.

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

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

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


назад далее