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



movs, после каждого сравнения увеличивает (или уменьшает, если поднят флаг направления) si и di на число сравниваемых за раз байтов (в на­шем случае на 1).

Чтобы инструкция cmpsb работала правильно, ее нужно подготовить так же, как ин­струкцию movs: задать сегментные регистры и смещения строк. В регистр сх посы­лается размер сравниваемых строк zsize, вычисляемый ассемблером в процессе компиляции

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

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

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

Меточные булевые цифры (целые) вдобавок могут быть 2- и 64-разрядными. Наиболее больший (наиболее конечный) бит симптоматичного суммы выводится как символ данного значения: 0 - положительное число, 1 - истина. Негативные суммы строят в шаблонном булевом дополнительном коде. Потому что старший байт знакового числа употребляется для маркировки метки, интервал представления 16-битных меточных значений от - 119 до + 118. 32-байтное системное число представляется в область распространения от - 19990 до + 24779. 0 описывается положительным значением. Для меточных чисел имеют возможность осуществляться процедуры суммирования, вычета, возвышения и дробления.

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


назад далее