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



Чтобы проверить этот бит, достаточно прочитать слово со­стояния в обычное 2-байтовое слово и затем проверить младший бит старшего байта. Все это проделывают инструкции, показанные в листинге 7.4.


Инструкция ftst проверяет слово на вершине стека, а инструкция ftstw ах, пере­писывает слово состояния, содержащее результат проверки в регистр ах. Сдвиг регистра ah на шаг вправо shr ah, 1 помещает восьмой бит слова состояния во флаг переноса, а инструкция jc exit отправляет процессор к метке exit, когда этот флаг поднят. Если же флаг опущен, число на вершине стека не отрицатель­но, и к нему применима операция извлечения корня fsqrt.

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

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

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

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

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


назад далее