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



Почему же DOS не использует 32-битные регистры? Потому, что в процессорах — со­временниках DOS их просто не было! Процессор Intel 8086 — сердце компьюте­ра IBM PC-XT — содержал только 16-битовые регистры ах, bx, сх, dx, si, di, и пе­ред его разработчиками встал выбор: либо обречь процессор на работу с 65 535 байтами, либо записывать адрес в двух регистрах.

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

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

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

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

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


назад далее