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



В нашем примере с сегментом data связан регистр ds, а с сегментом datal — регистр es. Такую связь необходимо задать, чтобы ассемблер знал, какой сегментный регистр ука­зать в соответствующей инструкции.

Возьмем, например, инструкцию mov dx, first, пересылающую число first в ре­гистр dx. Чтобы эта инструкция имела какой-то смысл, ассемблер должен знать, какой сегментный регистр «подпирает» сегмент data, где хранится число first

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

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

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

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

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


назад далее