Пытался найти алгоритм для умножения двух чисел в доп коде -- не вышло.
Нашёл лишь пример из книги, который похож на мой:

У меня A = 0.11011 ; B = -0.10101
Я пытался понять алгоритм, глядя на пример, но, в итоге, у меня ничего не вышло, наверное, так как ответ получился неверным.
Значит, что я делал:
0) Получил число -A в доп коде, выделив два разряда под знак, аналогично поступил и с B.
1) В сумматор поместил -A
далее у меня алгоритм раздваивается. дальнейшие значения сумматора зависят от числа -В:
1 вариант:
смотрим последнюю цифру у -B, если она равна 1, то добавляем к значению в сумматоре регистр 0 справа.
если последняя цифра сумматора = 0, то добавляем к сумматору А, сдвинутое вправо на номер шага.
2 вариант: наоборот -- если последняя цифра сумматора = 1, то добавляем к сумматору А, сдвинутое вправо на номер шага.
а если последняя цифра сумматора = 0, то то добавляем к значению в сумматоре регистр 0 справа.
Но правильного ответа я так и не получил.
Держу в уме еще 2 варианта, точно таких же, только идти буду по B не справа налево, а слева направо.
Но это всё только догадки, может кто помочь с алгоритмом? Буду очень признателен.
Вот, на всякий случай, мое решение, по выше описанным первому и второму варианту: _http://rghost.ru/7x4wtHXnD/image.png