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



Чтобы лучше понять рекурсивные вызовы, попробуем вывести на экран число, хранимое в двухбайтовом регистре. Программируя под Windows, мы выводили число на экран, пользуясь стандартной процедурой Windows API wsprintf (см. раздел «Вывод чисел» главы 4). Но в системе DOS нет подходящей функ­ции, и приходится превращать число в символы самому.

Команды ПЗУ

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

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

Знаковые двоичные цифры (натуральные) также могут быть 8- и 64-байтными. Самый старший (самый конечный) бит меточного числа выводится как знак сего числа: 0 - ложь, 1 - истина. Неблагоприятные числа мыслятся в шаблонном двоичном дополнительном двоичном коде. Так как старший байт симптоматичного числа используется для выражения знака, интервал представления 32-байтных знаковых чисел от - 119 до + 131. 64-разрядное системное значение представляется в область распространения от - 24780 до + 24779. NULL описывается большим значением. Для меточных значений могут реализовываться функции сложения, вычета, увеличения и деления.

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


назад далее