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



В результате стек после нескольких вызовов процедуры ста­нет похож на слоеный пирог, где десятичные цифры числа чередуются с адреса­ми возврата (рис. 11.5).

Первой сохраненной в стеке цифрой будет 3 (поделили 123 на 10 — получили частое ах=12 и остаток dx=3). Затем процедура вызовет сама себя, сохранив перед этим в стеке адрес возврата, и поделит

Программирование ППЗУ

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

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

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

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


назад далее