Умножение с младших разрядов в дополнительном коде
Алгоритм:
[Z]дк = (...(0+[X]дк*[yn+1 – yn])*2-1 + [X]дк*[yn – yn-1])*2-1 + ... ... + [X]дк*[y2 – y1])*2-1 + [X]дк*[y1 – y0]
Если yn = yn+ 1 , то производится сдвиг частичного произведения.
Если yn = 0 и yn+1 = 1, то к частичному произведению прибавляется [X]дк
Если yn = 1 и yn+1 = 0, то из частичного произведения вычитается [X]дк.
Пример: