Построение арифметико-логического устройства для выполнения операции умножения целых чисел
Контрольная работа - Компьютеры, программирование
Другие контрольные работы по предмету Компьютеры, программирование
добавление не производится.
4.Выполняется сдвиг вправо суммы частичных произведений на 1 разряд, причём, если значение суммы ?0, то производится обычный сдвиг. Если текущее значение суммы частичных произведений <0, то производится модифицированный сдвиг с занесением 1 в знаковый разряд.
5.Пункты 3 и 4 повторяются для всех числовых разрядов множителя.
6.Если множитель ?0, то текущее значение суммы частичных произведений представляет собой результат в прямом коде для положительного значения и в дополнительном коде для отрицательного значения. Если множитель <0, то к текущему значению суммы частичных произведений необходимо добавить множимое с обратным знаком.
7.Размещение результатов в формате двойного слова путём сдвига суммы частичных произведений вправо на 1 разряд.
Z = X * Y, Y > 0
Алгоритм тот же, за исключением модифицированного сдвига. При этом может возникнуть следующее: если младший разряд множителя =0, а множимое <0, то нет необходимости выполнять модифицированный сдвига (нельзя), поскольку сумма частичных произведений =0, а нуль в дополнительном коде знака не имеет. И лишь только с появлением отрицательного значения суммы частичных произведений сдвиг должен быть модифицированным.
Y < 0
Yдоп = 2n - |Y|
Весовой коэффициент: 2n-1. Поэтому, если вычислить псевдопроизведение:
Z = X * (2n-1 - |Y|) = -X * |Y| + X * 2n-1
Z больше истинного значения на величину множимого, поэтому на завершительном этапе перед размещением результатов в формате двойного слова перед последним сдвигом необходимо из результата вычесть множимое. Поэтому при СчЦ = 0 к текущему значению суммы частичных произведений добавляют множимое с обратным знаком.