5. Порядок числа С равен порядку числа с большим порядком, т.е. р = +1.
[С2]п=0: 1 0: 0110.
Видно, что мантисса результата не нормализована, так как старшая цифра мантиссы равна нулю.
6. Нормализуем результат путем сдвига мантиссы на один разряд влево и соответственно вычитаем из значения порядка единицу:
Умножение (деление). Операция умножения (деления) чисел с плавающей точкой также требует разных действий над порядками и мантиссами. Алгоритмы этих операций выполняются в следующей последовательности.
1. При умножении (делении) порядки складываются (вычитаются) так, как это делается над числами с фиксированной точкой.
2. При умножении (делении) мантиссы перемножаются (делятся).
3. Знаки произведения (частного) формируются путем сложения знаковых разрядов сомножителей (делимого и делителя). Возможные переносы из знакового разряда игнорируются.
При обработке больших массивов экономической информации переводы чисел из десятичной системы в двоичную и обратно могут требовать значительного машинного времени. Некоторые образцы ЭВМ поэтому имеют или встроенные, или подключаемые блоки, которые обрабатывают десятичные целые числа в их двоично-десятичном представлении. Действия над ними также приводятся к операции алгебраического сложения отдельных цифр чисел, представленных дополнительными кодами в соответствии с табл. 2.3.
Приведем один из алгоритмов сложения, который получил довольно широкое распространение.
1. Сложение чисел начинается с младших цифр (тетрад) и производится с учетом возникающих переносов из младших разрядов в старшие.
2. Знак суммы формируется специальной логической схемой по знаку большего слагаемого.
3. Для того чтобы при сложении двоично-десятичных цифр возникали переносы, аналогичные при сложении чисел в десятичном представлении, необходимо проводить так называемую десятичную коррекцию. Для этого к каждой тетраде первого числа прибавляется дополнительно по цифре 610=01102, что позволяет исключить шесть неиспользуемых комбинаций (1010-1111)2, так как они кодируют шестнадцатеричные цифры A-F (числа 10-1510).
4. После операции суммирования осуществляется корректировка суммы. Из тех тетрад суммы, из которых не было переносов, изымаются ранее внесенные избытки 610=01102. Для этого проводится вторая коррекция. Операция вычитания заменяется, как и обычно, операцией сложения с числом -6,представленным дополнительным кодом 10102, но только в тех разрядах, в которых отсутствовали переносы. При этой второй коррекции переносы из тетрад блокируются.
5. Операция вычитания реализуется достаточно своеобразно. По общему правилу сложения (п.п.1-4) к тетрадам числа с большим модулем прибавляются дополнительные коды тетрад другого числа. В качестве знаке результата берется знак числа с большим модулем.