Особенности реализации умножения в ЭВМ

Основные положения двоичного умножения

Принципы ее реализации в ЭВМ

Операция умножения целых чисел и

Вычитание

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

В связи с тем, что мантисса числа представляется в прямом коде, при изменении знака числа меняется только знаковый разряд, а мантисса остается прежней.

 

 

А=13 x1101

В=11 1011

---------

+ 1101

-------------

10001111=(143)10

 

Другой метод:

 

x1101

--------

+ 1101

------------------

10001111=(143)10

 

1. Умножение двоичных чисел (как и десятичных) состоит в последовательном умножении множимого на отдельные разряды множителя с суммированием результатов умножения. Результат умножения множимого на один разряд множителя принято называть частичным произведением. Результат умножения двух чисел представляет собой сумму всех частных произведений.

2. Каждое частное произведение либо совпадает с множимым, либо равно 0.

3. Формируемые частные произведения должны быть определенным образом сдвинуты друг относительно друга для их последующего суммирования.

4. Частные произведения можно формировать как начиная от младших, так начиная и от старших разрядов множителя.

5. В общем случае для результата умножения требуется количество цифр равное сумме количества цифр операндов. При одинаковой разрядности операндов: 2n - разрядов.

 

 

1. В операционном устройстве для умножения двоичных чисел должен использоваться многоразрядный двоичный сумматор, что предопределяет умножение в виде последовательного многошагового процесса, на каждом шаге которого проводится умножение на один разряд множителя. Сумма частных произведений: СЧП.

Для фиксации этой суммы на каждом шаге необходимо использовать 2n-разрядный процессор, n-разрядного операнда.

Перед началом операции необходимо осуществить сброс этого регистра (установить в “ноль”).

2. На каждом шаге умножения анализируется определенный разряд множителя, и если он равен единице, то на этом шаге производится сложение СЧП с множимым. Если разряд множителя равен нулю, то сложения на данном шаге производится.

3. Любой шаг умножения должен сопровождаться сдвигом множимого относительно неподвижной СЧП: принципиально возможен и подход, при котором множимое остается неподвижным, но происходит сдвиг СЧП.

4. Реализацию умножения принципиально можно начинать как от младшего, так и от старшего разряда множителя.

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

При выполнении умножения начиная от младших разрядом множителя, схема анализа привязывается к младшему разряду регистра множителя, и в этом регистре реализуется сдвиг вправо. При реализации умножения начиная от старших разрядом множителя схема анализа привязывается к старшему разряду регистра множителя и в нем реализуется сдвиг вправо.

6. Для фиксации момента завершения операции, в операционном устройстве умножения должен быть использован счетчик (суммирующий или вычитающий).

7. Так как в реализации умножения можно использовать различные подходы, связанные с тем, от какого разряда множителя начинается умножение, а так же с тем относительно чего сдвигается, можно использовать четыре способа (схемы) умножения.