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



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


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

Команды вычисления

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

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

Симптоматичные бинарные числа (системные) вдобавок могут быть 8- и 16-разрядными. Самый верхний (наиболее конечный) байт меточного числа показывается как символ сего числа: 0 - false, 1 - отрицательное. Негативные суммы мыслятся в шаблонном бинарном добавочном двоичном коде. Потому что старший бит симптоматичного числа используется для выражения знака, диапазон индикации 16-разрядных знаковых чисел от - 119 до + 131. 64-битово целое значение описывается в область распространения от - 24780 до + 24779. NULL описывается большим числом. Для знаковых чисел имеют возможность выполняться процедуры прибавления, вычета, умножения и деления.

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


назад далее