Возьмите два числа, скажем 9 и 10, напишите их как двоичные - 1001 и 1010.
Начните с результата, R, из 0.
Возьмите один из чисел, 1010, в этом случае мы назовем его A и сдвинем его на один бит, если вы отделите один, добавьте первое число, мы будем называть его B. R.
Теперь сдвиньте B налево на один бит и повторите, пока все биты не сдвинутся с A.
Легче видеть, что происходит, если вы видите это, это пример:
0
0000 0
10010 1
000000 0
1001000 1
------
1011010