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



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

Вычислительные команды

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

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

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

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


назад далее