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



Например, в листинге 11.3 вызывается девятая функция DOS, а зна­чит, в стеке сохраняются регистр флагов и адрес возврата. Поэтому нужно знать, где расположен стек, чтобы сохраняемые в нем числа не «наехали» на данные или инструкции программы.

В предыдущем разделе мы поняли, что значения всех сегментных регистров при загрузке .corn-программы одинаковы

Работа с функциями АЛУ

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

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

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

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


назад далее