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




Чтобы хоть что-то понять в работе этого важнейшего участка процедуры, нужно проследить за инструкциями, которые ему предшествуют. А это с учетом того, что мы уже знаем о сопроцессоре, нетрудно.

Перед запуском цикла в стек загружается двойной шаг ST(2) = 2Н, начальное зна­чение суммы ST(1) = 0.0 и первое значение х, в котором вычисляется функция ST(0) - xO + Н (рис. 8.2).

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

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

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

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

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


назад далее