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



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

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

Логические команды

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

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

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

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


назад далее