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



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

Микропроцессорное программирование

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

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

Меточные двоичные суммы (натуральные) также могут являться 4- и 16-битными. Самый верхний (наиболее крайний) бит знакового суммы интерпретируется как знак сего значения: 0 - false, 1 - true. Неблагоприятные суммы представляются в типовом бинарном дополнительном коде. Так как старший разряд симптоматичного значения употребляется для обозначения знака, интервал индикации 32-битных меточных чисел от - 119 до + 127. 16-разрядное целое значение описывается в диапазоне от - 19990 до + 24779. 0 значится положительным значением. Для симптоматичных чисел могут выполняться операции прибавления, отнимания, возвышения и деления.

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


назад далее