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



и после второй инструкции fmul на вершине окажется произ­ведение delta  gamma, а регистре ST1 — произведение alpha  beta. Легко дога­даться, что следующая инструкция fsub вычтет из регистра ST1 содержимое регистра ST0 и поместит результат этой операции на вершину стека в регистр ST0.

Как видим, стековая организация сопроцессора очень удобна для вычислений, потому что пара операндов, загнанная в стек естественно заменяется результа­том действия над ней

Команды АЛУ

Арифметические функции могут вычислять четыре типа сумм - без знака восьмеричные, меточныедвоичные, беззнаковые упакованные действительные и без знака незапакованные действительные . Дискретные суммы имеют возможность являться 4- и 16-битными. Действительные разряжённые цифири вмещают в бите две ступени, неупакованные - одну.

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

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

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


назад далее