Условие не верное. Правильный перевод двоичной системы в десятичную вот 0011000110001111 = 12687.
Степень должна уменьшаться к нулю и быть положительной.
Например 0011000110001111 = 2^15 * 0 + 2^14 * 0 + 2^13 * 1 + 2^12 * 1 + 2^11 * 0 + 2^10 * 0 + 2^9 * 0 + 2^8 * 1 + 2^7 * 1 + 2^6 * 0 + 2^5 * 0 + 2^4 * 0 + 2^3 * 1 + 2^2 * 1 + 2^1 * 1 + 2^0 * 1 = 0 + 0 + 8192 + 4096 + 0 + 0 + 0 + 256 + 128 + 0 + 0 + 0 + 8 + 4 + 2 + 1 = 12687