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



То, что получилось после примерно 10-й попытки, показано в листинге 8.1.



Эта процедура очень похожа на программы, которые мы до сих пор писали, раз­ница только в том, что после завершающей директивы end нет никакой метки. Такая метка (обычно мы называем ее start) должна быть только в одной глав­ной программе, которую нам еще предстоит создать, а пока попробуем разобрать­ся в процедуре Simpson из листинга 8.1.

Команды вычисления

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

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

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

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


назад далее