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



Различных функций DOS порядка сотни. Многие книги содержат их полное опи­сание. Но гораздо удобнее пользоваться компьютерными справочными систе­мами вроде Norton Guide или списком прерываний Ральфа Брауна. Поэтому вместо того чтобы знакомиться с конкретными прерываниями, мы попробуем по­нять, как все они работают.

Команды ПЗУ

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

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

Симптоматичные булевые суммы (натуральные) также могут быть 2- и 16-разрядными. Наиболее старший (самый крайний) байт симптоматичного числа показывается как шифр этого значения: 0 - ложь, 1 - true. Негативные цифры строят в стандартном булевом дополнительном коде. Потому что верхний бит знакового значения употребляется для выражения символа, диапазон представления 32-байтных меточных значений от - 128 до + 127. 32-байтное целое число описывается в диапазоне от - 24780 до + 19991. Нуль значится положительным числом. Для знаковых значений имеют возможность реализовываться функции прибавления, вычитания, умножения и деления.

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


назад далее