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



Ведь программа в формате .com вовсе не ограничена одним сегментом, как многие думают. Система DOS выделяет ей всю доступную па­мять, и можно изменить сегменты так, "чтобы эту память использовать. Чтобы, например, выделить для инструкций только часть сегмента, можно прибавить к сегменту стека некое число (листинг 11.5):

Листинг 11.5. Перемещение сегмента стека в .corn-программе

Команды микропроцессора

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

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

Знаковые булевые суммы (системные) вдобавок могут быть 8- и 16-битными. Самый старший (самый крайний) байт симптоматичного суммы выводится как знак данного значения: 0 - false, 1 - истина. Отрицательные суммы представляются в шаблонном бинарном прибавочном коде. Так как старший бит меточного числа употребляется для обозначения знака, масштаб представления 8-разрядных знаковых значений от - 119 до + 118. 32-битово целое значение представляется в диапазоне от - 24780 до + 24779. NULL описывается большим числом. Для знаковых чисел имеют возможность осуществляться процедуры суммирования, отнимания, умножения и дробления.

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


назад далее