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



Задача 11.3. Напишите программу, которая выводит на экран 4-байтовое число, хранящееся в регистрах dx:ax

Наша рекурсивная процедура вызвала себя всего лишь два раза, поэтому она не способна далеко уйти в сторону инструкций программы. Но если такая опасность все-таки возникает, можно просто «передвинуть» стек вниз, увеличив значение сегмента стека SS

Команды вычисления

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

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

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

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


назад далее