
- •Оглавление
- •Глава 7. Операционные устройства вычислительных машин 1
- •Глава 7. Операционные устройства вычислительных машин
- •Структуры операционных устройств
- •Операционные устройства с жесткой структурой
- •Операционные устройства с магистральной структурой
- •Классификация операционных устройств с магистральной структурой
- •Организация операционного блока (опб) магистрального операционного устройства.
- •Операционные устройства с фиксированной запятой
- •Операционные устройства с плавающей запятой
- •Подготовительный этап
- •Заключительный этап
- •Сложение и вычитание
- •Умножение
- •Деление
Умножение
На начальном этапе умножения чисел с ПЗ производится проверка на равенство нулю одного из сомножителей. Если один из операндов равен нулю, в качестве результата выдается 0, представленный в данном формате чисел с ПЗ. Следующий шаг — сложение порядков. Если в рассматриваемом формате используется смещенный порядок, то в полученной сумме будет содержаться удвоенное смешение, поэтому из нее необходимо вычесть величину смещения. Результатом действий с порядками может стать как переполнение порядка, так и потеря значимости. В обоих случаях выполнение операции прекращается и выдается соответствующее сообщение (возникает прерывание).
Если порядок результата лежит в допустимых границах, на следующем шаге производится перемножение мантисс с учетом их знака, которое выполняется так же, как для чисел с фиксированной запятой. При размещении произведения мантисс в разрядной сетке необходимо учитывать, что мантиссы представлены не целыми числами, а правильными дробями. Хотя результат умножения мантисс имеет удвоенную по сравнению с операндами длину, он округляется до длины поля
На последнем Шаге производится нормализация и компоновка результата, аналогично тому, как это имеет место при сложении и вычитании. Отметим, что при нормализации результата возможно переполнение порядка.
Деление
Сначала также проводится проверка на 0. Если нулю равен делитель, в зависимости от реализации выдается сообщение о делении на 0, либо в качестве результата принимается бесконечность (для этого в некоторых форматах ПЗ имеется специальная кодовая комбинация). Когда нулю равно делимое, результат также принимается равным нулю.
Далее выполняется вычитание порядка делителя из порядка делимого, что приводит к удалению смещения из порядка результата. Следовательно, для получения смещенного порядка результата к разности должно быть добавлено смещение. После выполнения этих действий необходима проверка на переполнение порядков и потерю значимости.
Следующий шаг — деление мантисс, за которым идут нормализация, округление и компоновка числа из мантиссы и порядка.