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



Слово состояния

К сожалению, арифметические вычисления не всегда можно свести к обратной польской записи. Иногда нужно оставить один из операндов в стеке или изме­нить порядок действий (например, вычислить разность ST0 - ST1) или же ис­пользовать операнд, хранимый вдалеке от вершины. Чтобы все это стало воз­можным, команды сопроцессора используют явно заданные аргументы, при­чем один из них обязательно должен быть вершиной стека. Например, инст­рукция:

Команды ПЗУ

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

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

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

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


назад далее