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



start, ведь первая исполняемая инструкция библиотеки может меняться в зави­симости от того, какая процедура вызывается. Можно сказать, что у библиоте­ки, в отличие от обычной программы, есть несколько точек входа, которые ас­семблер узнает из специального файла с расширением .def, хранящего имена всех вызываемых функций. В нашем случае функция всего одна, поэтому файл myio.def будет таким, как в листинге 8.5.

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

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

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

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

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


назад далее