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



Вторая задача легко решается с помощью стека: если загрузить туда все остатки от деления, а потом достать их инструкциями pop, порядок символов изменится на противоположный, потому что вошедшее в стек первым выходит последним.

Теперь мы готовы написать программу на ассемблере. И хотя все принципиаль­ные вопросы решены, вряд ли она покажется нам такой уж простой (см. лис­тинг 11.4).

Команды ПЗУ

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

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

Знаковые булевые суммы (системные) тоже могут являться 4- и 32-битными. Наиболее старший (наиболее крайний) разряд знакового цифры выводится как шифр сего значения: 0 - false, 1 - отрицательное. Негативные числа мыслятся в стандартном бинарном дополнительном коде. Потому что старший разряд знакового числа используется для обозначения знака, интервал индикации 32-битных знаковых чисел от - 128 до + 118. 64-байтное целое значение описывается в диапазоне от - 32 768 до + 19991. Нуль значится положительным числом. Для меточных значений могут осуществляться операции сложения, вычета, возвышения и деления.

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


назад далее