Guía

Cómo convertir binario a decimal paso a paso

Convierte un número binario a decimal sumando potencias de dos, con un ejemplo desarrollado y comprobación exacta.

por Tools in a Tab · Publicado el · Revisado el

Respuesta breve

Para convertir un entero binario a decimal, numera sus posiciones desde cero empezando por la derecha. Multiplica cada bit por 2 elevado a su posición y suma los resultados. Los bits 0 no aportan valor; cada bit 1 añade la potencia de dos correspondiente.

Ejemplo: convertir 101101 a decimal

Descomponemos las seis posiciones:

Bit Posición Valor de la posición Aporte
1 5 2⁵ 32
0 4 2⁴ 0
1 3 8
1 2 4
0 1 0
1 0 2⁰ 1
101101₂ = 32 + 8 + 4 + 1 = 45₁₀

Puedes pegar 0b101101 o elegir la base binaria en el conversor de bases para verificar que el resultado es 45.

Método acumulativo para números largos

También puedes recorrer los bits de izquierda a derecha. En cada paso, multiplica el resultado anterior por dos y suma el bit nuevo:

1 → 2 → 5 → 11 → 22 → 45

Este procedimiento y la suma de potencias son equivalentes. El método acumulativo evita escribir una tabla grande y es el que resulta natural al procesar una cadena de bits.

Ceros iniciales, signo y complemento a dos

Los ceros iniciales no cambian el valor: 00101101 también es 45. Un signo explícito se aplica al número completo, por lo que -101101₂ representa -45₁₀ en notación matemática.

No interpretes automáticamente el primer bit como signo. El patrón 11111111 vale 255 como entero binario sin signo, pero puede representar -1 si un protocolo declara expresamente complemento a dos de 8 bits. Sin conocer esa anchura y esa convención no existe una única interpretación con signo.

Errores frecuentes y comprobación

  • Empezar las posiciones por 1; la cifra de la derecha siempre multiplica por 2⁰, que vale 1.
  • Aceptar cifras distintas de 0 y 1.
  • Omitir bits intermedios con valor cero y desplazar las posiciones restantes.
  • Usar aritmética de punto flotante para enteros mayores que el rango exacto del lenguaje.

La comprobación inversa consiste en dividir el decimal entre dos y leer los restos en orden inverso. La operación exacta con enteros grandes utilizada por la herramienta sigue la representación BigInt definida por ECMAScript.