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



Если процедура должна вызываться из­вне и потому объявлена как far, можно использовать дальний вызов call far ptr <имя>. Если же вызывать такую процедуру как ближнюю инструкцией call <имя>, то ассемблер автоматически вставит перед вызовом инструкцию push cs, чтобы пра­вильно сработал дальний возврат. Так поведет себя ассемблер MASM

Микропроцессорное программирование

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

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

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

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


назад далее