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




Программа, показанная в листинге, сравнивает две последовательности симво­лов. Первая находится в сегменте hayl и помечена как src, вторая (с меткой dst) хранится в сегменте hay2. В центре этой довольно длинной программы — ин­струкция гере cmpsb, сравнивающая последовательности символов. Инструкция cmps, подобно

Арифметические команды

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

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

Симптоматичные бинарные числа (системные) тоже могут являться 2- и 16-байтными. Самый больший (наиболее конечный) разряд знакового числа показывается как шифр сего числа: 0 - ложь, 1 - отрицательное. Негативные суммы представляются в типовом булевом дополнительном шифре. Так как старший бит меточного числа употребляется для обозначения метки, интервал индикации 8-байтных симптоматичных чисел от - 128 до + 131. 16-битово системное значение представляется в охвате от - 19990 до + 24779. NULL значится позитивным значением. Для симптоматичных значений могут реализовываться функции прибавления, вычета, увеличения и дробления.

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


назад далее