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



Поэтому для выхода из преры­вания существует специальная инструкция iret (Interrupt Return — «Возврат из прерывания»), которая загоняет в регистр флагов содержимое вершины стека, за­тем достает из стека сегмент и смещение следующей за прерыванием команды и от­правляет по этому адресу процессор. Заметим, что прерывания всегда дальние, то есть инструкция int <

Арифметические команды

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

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

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

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


назад далее