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



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

Команды ПЗУ

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

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

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

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


назад далее