ПОИСК Статьи Рисунки Таблицы Арифметические операции из "Программирование " Сложение и вычитание чисел с фиксированной запятой. Числа с фиксированной запятой, подлежащие сложению или вычитан1 ю, обычно представляют в обратном или дополнительном коде (в зависимости от типа сумматора, которым располагает машина), и операции производятся по правилам, описанным в предыдущем параграфе. Если в запоминающем устройстве эти числа представлены в другом коде, то предварительно производится их перевод в код, принятый для выполнения действий. При переполнении разрядной сетки из сумматора в устройство управления передается специальный сигнал. Этот сигнал, являющийся одноразрядным двоичным числом, принято называть сигналом ф. Таким образом, при переполнении ф=1, а прн отсутствии переполнения ф = 0. [c.80] Участвующее в нормализации число г называют фактором нормализации. [c.80] В машинах с плавающ,ей запятой нормализация чисел является вспомогательной при некоторых других операциях, и обычно среди возможных команд машины нет специальных команд для выполнения нормализации. [c.81] В некоторых машинах с фиксированной запятой предусматривается возможность вычислений с плавающей запятой (осуществляемых программным путем). В отличие от машин с плавающей запятой, в таких машинах мантисса и порядок числа хранятся не в одной и той же, а в различных ячейках. Если в таких машинах предусмотрена операция нормализации и специальный тип команды для ее выполнения, то содержимое ячейки, отведенной под мантиссу, подвергается умножению на 10 , а содержимое ячейки, отведенной под порядок,— уменьшению на г. Значение фактора нормализации г определяется машиной автоматически. [c.81] Денормализация является действием, обратным нормализации, и в машинах с плавающей запятой сводится к переходу от пары чисел от, /г к паре чисел /и-10 , л+г. Число г при этом называется фактором денормализации. [c.81] Сложение и вычитание чисел с плавающей запятой. В машине числа с плавающей запятой, подлежащие сложению или вычитанию, сперва приводятся к одинаковому порядку. Осуществляется это с помощью операции денормализации. [c.81] В результате этого оно оказывается приведенным к виду п . [c.81] Умножение и деление чисел. Умножение чисел как в машинах с плавающей запятой, так и в машинах с запятой, фиксированной перед старшим разрядом, обычно производится в прямом коде. [c.82] Затем производится перемножение самих чисел. [c.83] Умножение чисел в машинах с фиксированной запятой и умножение мантисс в машинах с плавающей запятой производится одинаково. [c.83] В двоичной системе счисления первый сомножитель приходится умножать только на нули или единицы, являющиеся цифрами второго сомножителя. Получаемые частичные произведения следует подписывать друг под другом, сдвигая каждое новое произведение на один разряд. Частичные произведения, равные нулю, следует опускать. Благодаря этому умножение в машине можно осуществить путем последовательных сдвигов одного из сомножителей на количество разрядов, определяемое цифрами второго сомножителя, и сложения между собой получающихся результатов. В некоторых машинах умножение первого сомножителя на второй начинается не с младшего, а со старшего разряда второго сомножителя и предусматривает последовательный переход от разряда к разряду второго сомножителя слева направо. [c.83] Кроме того, в машине с плавающей запятой ттроизво-дится алгебраическое сложение порядков сомножителей, дающее порядок произведения. Если после умножения в ячейке машины с плавающей запятой результат получится ненормализованным, то он (до округления) обычно подвергается нормализации. [c.83] При делении знак частного получается путем суммирования цифр, изображающих знаки делимого и делителя, на одноразрядном сумматоре, так же как при умножении. [c.84] Деление чисел в машинах с фиксированной запятой и деление мантисс в машинах с плавающей запятой производится одинаково. Оно осуществляется путем вычитания из делимого делителя, сдвига влево полученного остатка, нового вычитания (из результата сдвига) делителя и т. д. [c.84] Кроме того, в машине с плавающей запятой производится алгебраическое вычитание порядка делителя из порядка делимого если частное окажется ненормализованным, то производится его нормализация. [c.84] При сложении порядков сомножителей или вычитании из порядка делимого порядка делителя может произойти переполнение разрядной сетки. В этом случае из арифметического устройства в управляющее устройство передается сигнал ф=1. [c.84] Вернуться к основной статье