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



опре­деленного вида использует инструкция lea, чье название состоит из первых букв английской фразы Load Effective Address (загрузить эффективный адрес). Чтобы понять, как она работает, сравним две инструкции:

mov еах. [ebx+esi2] lea еах. [ebx+esi2]

Первая посылает в регистр еах содержимое двойного слова с адресом ebx + esi  2. Вторая посылает в еах сам адрес, то есть сумму ebx и умноженного на 2 регистра esi

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

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

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

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

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


назад далее