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

UptoLike

128
0
0
1
1
0
1 1
сложение ст. тет-
рад;
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0 1
результат;
СЧТ1:=СЧТ1 – 1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0 0
AR
((РСМ,Р2),1тет);
СЧТ:=СЧТ – 1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
AR
((РСМ,Р2),1тет);
n+1 сдвиг
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0 0
результат умноже-
ния, равный 600
(10)
Второй алгоритм умножения позволяет существенно сократить
количество операций сложения по сравнению с первым. В его основу
положено разложение множителя по степеням двойки, т.е. на 1-, 2-,
4-, 8-кратные составляющие. Таким образом, множитель Y представ-
ляется в следующем виде:
Y
8421
=8*z
1
+4*z
2
+2*z
3
+z
4
=2*(2*(2*z
1
+z
2
)+z
3
)+z
4
,
где z
i
значение, полученное объединением битов одинакового веса
каждой из тетрад, начиная со старшей.
Например, Y=3872
(10)
, тогда [Y]
8421
=0011100001110010.
Тетрады
Старшая
0
0
1
1
1
0
0
0
0
1
1
1
Младшая
0
0
1
0
Получаем
сомножители,
взяв
биты одинакового веса
каждой из тетрад сверху вниз
z
1
=0100
z
2
=0010
z
3
=
1011
z
4
=1010
Алгоритм умножения состоит из следующих шагов:
1. Множимое умножается на z
1
. Результат сдвигается влево на 1 бит.
2. Множимое умножается на z
2
. Результат сдвигается влево на 1 бит.
3. Множимое умножается на z
3
. Результат сдвигается влево на 1 бит.
4. Множимое умножается на z
4
.
                                                          сложение ст. тет-
     0 0 1 1 0                                    1   1
                                                          рад;
                                                          результат;
0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0     1
                                                          СЧТ1:=СЧТ1 – 1
                                                          AR((РСМ,Р2),1тет);
0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0     0
                                                          СЧТ:=СЧТ – 1
                                                          AR((РСМ,Р2),1тет);
0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0
                                                          n+1 сдвиг
                                                          результат умноже-
0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0     0
                                                          ния, равный 600(10)

    Второй алгоритм умножения позволяет существенно сократить
количество операций сложения по сравнению с первым. В его основу
положено разложение множителя по степеням двойки, т.е. на 1-, 2-,
4-, 8-кратные составляющие. Таким образом, множитель Y представ-
ляется в следующем виде:
            Y8421=8*z1+4*z2+2*z3+z4=2*(2*(2*z1+z2)+z3)+z4,
где zi – значение, полученное объединением битов одинакового веса
каждой из тетрад, начиная со старшей.
    Например, Y=3872(10), тогда [Y]8421=0011100001110010.
                            Тетрады
Старшая          0           0              1            1
                 1           0              0            0
                 0           1              1            1
Младшая          0           0              1            0
              Получаем сомножители, взяв биты одинакового веса
                        каждой из тетрад сверху вниз
              z1=0100     z2=0010       z3=1011       z4=1010

  Алгоритм умножения состоит из следующих шагов:
  1. Множимое умножается на z1. Результат сдвигается влево на 1 бит.
  2. Множимое умножается на z2. Результат сдвигается влево на 1 бит.
  3. Множимое умножается на z3. Результат сдвигается влево на 1 бит.
  4. Множимое умножается на z4.



                                  128