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



mov word ptr [bx+si], 3 mov ah, 4ch int 21h

array WORD ARRSIZE dup (?) code ends end start

В ней адрес начала массива загоняется в регистр bx инструкцией mov bx, offset array. Далее в регистр si записывается число 5 — номер элемента массива. А по­скольку в массиве array хранится ARRSIZE слов, то si нужно еще умножить на 2, чтобы получить адрес элемента относительно начала массива. А дальше инст­рукция mov word ptr [bx + si], 3 записывает число 3 в пятый элемент массива.

Вычислительные команды

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

Не имеющие знака 8-битовые бинарные суммы имеют возможность насчитать значение от 0 до 255. Для понимания беззнаковых чисел в размере от NULL до 52680 употребляются 15 байт. Над без знака бинарными цифрами имеют возможность выполняться операции прибавления, отнимания, нарастания и разложения.

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

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


назад далее