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



cseg segment

assume cs:cseg

org OlOOh im: jmp first

<данные>

first:

<инструкции>

cseg ends end i ni

А можно спрятать данные, имеющие отношение к процедуре, после инструкций ret:

<имя процедуры> proc ret

<данные>

<имя процедуры> endp

Поскольку .com — особый формат программы, компилятор должен иначе обра­батывать исходный текст, поэтому нам понадобится другой командный файл, показанный в листинге 11.2

Логические команды

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

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

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

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


назад далее