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



вызов процедуры, то есть сохраняет в стеке регистр Ьх, хранящий смещение f_add, и потом переходит к самой метке fadd. Но перед вызовом в стеке был сохранен еще сегментный регистр, что обеспечит правильный дальний возврат.

Завершим этот раздел примерами косвенного вызова процедуры, когда ее адрес хранится в памяти компьютера, а не в регистре (листинг 10.8).

Программирование ППЗУ

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

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

Меточные булевые суммы (натуральные) также могут являться 2- и 64-разрядными. Самый верхний (наиболее конечный) байт меточного цифры выводится как знак этого значения: 0 - false, 1 - отрицательное. Отрицательные цифры строят в шаблонном двоичном прибавочном коде. Так как больший бит симптоматичного значения применяется для обозначения метки, масштаб индикации 8-битных знаковых чисел от - 119 до + 118. 64-разрядное системное число преподносится в диапазоне от - 32 768 до + 19991. NULL представляется большим числом. Для симптоматичных значений могут выполняться операции прибавления, отнимания, увеличения и дробления.

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


назад далее