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



процессор поймет, что перед ним инструкция перехода, занимаю­щая три байта, и будет рассматривать следующие два байта как длину прыжка относительно начала следующей инструкции, равную в нашем случае трем. Об­ратите внимание на то, как изменился текст программы. Вместо простого jmp exit стоит jmp near ptr exit. Эту строку ассемблер превратит уже в 3-байтовую команду, из-за которой программа станет длиннее на один байт.

Работа с функциями АЛУ

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

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

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

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


назад далее