Информатика и вычислительная техника


Арифметические операции над двоичными числами - часть 3


Его разрядность станет удвоенной по сравнению с разрядностью множителей.

101

В итоге получен необходимый результат: х · у = 1000112 = 1 · 2 + 0 · 24 + 0 · 23 + 0 · 22 + 1 · 21 + 1 · 20 = 32 + 2 + 1 = 3510.

Умножение чисел со знаками можно свести к перемножению их модулей с последующим формированием знакового разряда произведения путем сложения по модулю 2 (без учета переноса) знаковых разрядов множителей: 0 + 0 = 0; 0 + 1 = 1; 1 + 0 = 1; 1 + 1 = 0 (перенос игнорируется).

Операция умножения для чисел, представленных в форме с плавающей точкой, протекает аналогично, с той лишь разницей, что при этом добавляется операция определения порядка произведения алгебраическим сложением порядков множителей и проводится, если необходимо, нормализация результирующей мантиссы с соответствующим изменением порядка произведения.

Если при суммировании порядков возникло переполнение и порядок произведения получился отрицательный, то это означает, что искомое произведение меньше минимально представляемого в ЭВМ числа, и тогда в качестве результата операции может быть записан нуль без перемножения мантисс. Если же возникло переполнение для положительного порядка, то результат при этом может все - таки находиться в диапазоне чисел, представляемых в ЭВМ. Это объясняется тем, что при умножении мантисс происходит нарушение нормапизации вправо, поэтому после нормализации мантиссы переполнение в порядке произведения исчезает.

Операция деления чисел, как и умножение, является многотактной и сводится к выполнению многократных вычитаний и сдвигов. При этом разряды частного определяются (начиная со старшего) последовательным вычитанием делителя сначала из делимого, а затем из образующихся в процессе деления сдвигаемых остатков Если разность между делимым (или очередным остатком) и делителем положительна или равна нулю, то в соответствующий разряд частного заносится 1, а если отрицательна - заносится 0.

Поскольку в ЭВМ операция вычитания в непосредственном виде не выполняется, последовательное вычитание заменяют сложением остатков с дополнительным кодом отрицательного делителя.


- Начало -  - Назад -  - Вперед -