Каков тут алгоритм?

Двоичная записьДвоичная, с нулямиДесятичная110113100111001004
3 + 1 = 4
Очень просто, складываем младшие биты, получаем 1+1 = 10, пишем 0, 1 переносим в следующий разряд. В следующем разряде складываем 1+0+1, получаем опять 10, пишем 0, переносим 1 в следующий разряд. В следующем разряде получаем 0+0+1 = 1, ничего не переносим. Остальные разряды все по нулям, получается 100.