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



В процессорах 80386 и выше можно для этой же цели использовать регистры еах, ebx, есх, edx, esi, edi, ebp.


Но, несмотря на директиву assume, регистр dx, не «получит двойку», если явно не настроить сегмент ds инструкциями:

mov ах. data mov ds. ах

Обратите внимание, в программах из листингов 9.2, 9.3 начальные значения присваиваются только сегментным регистрам ds и es

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

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

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

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

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


назад далее