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



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

Программирование ППЗУ

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

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

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

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


назад далее