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



не примет суффикс «р» в команде fsubp digit, потому что вычисление разности и немедленное ее удаление из стека — операция бессмысленная, даже для такого «тупицы», как сопроцессор.

Чтобы понять, как работают разные команды сопроцессора, попробуем найти корни квадратного уравнения х2 + рх + q, вычисляемые по формулам.

Программа, показанная в листинге 7

Работа с функциями АЛУ

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

Без знака 8-битные двоичные суммы имеют возможность содержать вес от NULL до двухсот пятидесяти. Для понимания беззнаковых чисел в широте от 0 до 70141 используются 14 байт. Над беззнаковыми двоичными числами могут выполняться процедуры сложения, сбавки, увеличения и дробления.

Меточные булевые числа (системные) тоже могут являться 4- и 16-байтными. Самый верхний (наиболее крайний) байт меточного числа интерпретируется как шифр данного значения: 0 - положительное число, 1 - истина. Негативные суммы строят в стандартном бинарном прибавочном шифре. Потому что больший бит меточного значения используется для выражения метки, диапазон репрезентации 16-битных знаковых чисел от - 130 до + 127. 16-битово натуральное значение преподносится в диапазоне от - 19990 до + 24779. Нуль значится позитивным числом. Для меточных значений имеют возможность осуществляться процедуры сложения, вычитания, умножения и дробления.

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


назад далее