Основы арифметики цифровых процессоров. Вашкевич Н.П - 67 стр.

UptoLike

66
4.5.2. Алгоритм умножения целых чисел в формате
с ФТ в прямом коде
Алгоритм умножения целых чисел в формате с ФТ в прямом коде
отличается от ранее рассмотренного алгоритма умножения целых
беззнаковых чисел в формате с ФТ следующим:
1. Умножаются модули операндов.
2. Знак произведения определяется операцией сложения по моду-
лю 2 знаковых разрядов операндов (сомножителей):
Знак
множимого
Знак
множителя
Сложение
по модулю 2
Знак
произведения
0
0
0
^
0=0
0
0
1
0^
1
=1
1
1
0
1
^0=1
1
1
1
1^1=0
0
3. В счетчик тактов (СЧТ) устанавливается значение на единицу
меньше количества битов регистра множителя (так как на знаковый
бит умножение не производится).
4. Чтобы избавиться от знакового разряда множителя, который
при значении СЧТ=0 находится в младшем разряде Р2, выполняется
так называемый «n сдвиг». Это делается логическим сдвигом вправо
на один бит регистра сумматора РСМ и регистра Р2 (с переносом
выдвигаемого разряда из РСМ в старший разряд Р2).
4.5.3. Алгоритм умножения целых чисел
в дополнительном коде
Алгоритм умножения целых чисел в дополнительном коде отли-
чается от алгоритма умножения целых чисел в формате с ФТ в пря-
мом коде следующим:
1. Умножается дополнительный код множимого на дополнитель-
ный код множителя.
2. В РСМ выполняется арифметический сдвиг.
3. При умножении на множитель, имеющий отрицательный знак,
требуется коррекция результата. Коррекция состоит в том, что когда
       4.5.2. Алгоритм умножения целых чисел в формате
                     с ФТ в прямом коде
   Алгоритм умножения целых чисел в формате с ФТ в прямом коде
отличается от ранее рассмотренного алгоритма умножения целых
беззнаковых чисел в формате с ФТ следующим:
   1. Умножаются модули операндов.
   2. Знак произведения определяется операцией сложения по моду-
лю 2 знаковых разрядов операндов (сомножителей):
             Знак       Знак       Сложение         Знак
          множимого   множителя   по модулю 2   произведения
              0          0             0^0=0         0
              0          1             0^1=1         1
              1          0             1^0=1         1
              1          1             1^1=0         0


   3. В счетчик тактов (СЧТ) устанавливается значение на единицу
меньше количества битов регистра множителя (так как на знаковый
бит умножение не производится).
   4. Чтобы избавиться от знакового разряда множителя, который
при значении СЧТ=0 находится в младшем разряде Р2, выполняется
так называемый «n сдвиг». Это делается логическим сдвигом вправо
на один бит регистра сумматора РСМ и регистра Р2 (с переносом
выдвигаемого разряда из РСМ в старший разряд Р2).
            4.5.3. Алгоритм умножения целых чисел
                     в дополнительном коде
   Алгоритм умножения целых чисел в дополнительном коде отли-
чается от алгоритма умножения целых чисел в формате с ФТ в пря-
мом коде следующим:
   1. Умножается дополнительный код множимого на дополнитель-
ный код множителя.
   2. В РСМ выполняется арифметический сдвиг.
   3. При умножении на множитель, имеющий отрицательный знак,
требуется коррекция результата. Коррекция состоит в том, что когда


                                  66