допустим нужно перевести 10101. записываеш степени двойки в ряд
16 8 4 2 1
накладываеш маску в соответствии с бинарным числом
16 0 4 0 1
складываеш, получаеш 21
нет совершенно никакого смысла возводить что-либо в какие-то степени и городить прочий матан. двоичная система не зря выбрана в качестве основной для процессоров:)