Binario a decimal: devolver el sentido a una tira de bits
Qué hace esta conversión
Lee una cadena de ceros y unos como número en base 2 y la reescribe en base 10. Es la dirección que necesitas cuando el valor que tienes delante ya viene en formato de máquina —un volcado de registro, una máscara, un byte de banderas— y la pregunta que te haces es humana, por ejemplo si ha cruzado un umbral.
El método de la suma ponderada
Cada dígito binario vale una potencia de 2 según su posición desde la derecha, empezando por 1, 2, 4, 8 y siguiendo. Suma los pesos de las posiciones que llevan un 1. En 10011100 esas posiciones son 128, 16, 8 y 4, así que el valor decimal es 156. Con los primeros pesos memorizados —1, 2, 4, 8, 16, 32, 64, 128— la operación se reduce a sumas cortas.
Tabla de conversión de binario a decimal
Patrones de bits habituales con su valor decimal. Las filas de todo unos son las que hay que recordar: cada una es una unidad menos que la potencia de 2 siguiente, y por eso 255 y 65535 aparecen por todas partes.
| Binario | Decimal |
|---|---|
| 0 | 0 |
| 1 | 1 |
| 10 | 2 |
| 11 | 3 |
| 1010 | 10 |
| 1111 | 15 |
| 10000 | 16 |
| 101010 | 42 |
| 11111111 | 255 |
| 100000000 | 256 |
Leer un byte de estado o de banderas
Un byte de estado no es realmente un número, sino ocho respuestas de sí o no empaquetadas en un solo valor. Pasarlo a decimal te da un identificador compacto que puedes comparar y registrar; los bits individuales te cuentan qué pasó. Las dos lecturas son útiles, y la conversión es lo que te permite ir de una hoja de datos que documenta bits a un archivo de registro que anota decimales.
Ojo con los ceros a la izquierda
Los ceros a la izquierda no cambian el valor —0011 y 11 valen ambos tres—, pero sí cambian el ancho, y el ancho es lo que te dice si un campo ocupa un byte o cuatro. Cuando copies un valor de un campo de ancho fijo, conserva el relleno en tus notas aunque el conversor lo ignore.
Preguntas frecuentes
¿Cómo leo binario de cabeza?
Escribe encima de los dígitos los valores 128, 64, 32, 16, 8, 4, 2, 1 de izquierda a derecha para un número de ocho bits y suma los que estén sobre un 1. Para 10011100 eso es 128 + 16 + 8 + 4 = 156. Practicar con ocho bits cubre la gran mayoría de los casos diarios.
¿Por qué 11111111 vale 255 y no 256?
Porque ocho bits pueden representar 256 valores distintos contando desde cero, así que el mayor es 255. En general, n bits llegan hasta 2 elevado a n menos 1. Ese desfase de una unidad es la razón de que un byte albergue 256 valores pero el 256 no quepa en uno solo.
¿Puedo pegar binario con espacios entre los bytes?
Sí. Los espacios, los tabuladores y los guiones bajos se ignoran, así que una cadena copiada de un terminal o de un volcado de memoria se convierte sin limpiarla antes. Agrupar los bits de cuatro en cuatro o de ocho en ocho es solo una ayuda de lectura y no cambia el valor.
¿Un 1 inicial significa que el número es negativo?
Solo si has decidido de antemano que el campo es complemento a dos con signo, y eso es una propiedad del formato, no de los bits. Por sí solo, 11111111 es simplemente 255. El conversor trata toda entrada como magnitud no negativa salvo que escribas un signo menos explícito.
¿Cuál es la cadena binaria más larga que puedo convertir?
Bastante más larga que cualquier valor que vayas a pegar: el motor trabaja con enteros exactos en lugar de coma flotante, así que no se degrada con el tamaño como haría una calculadora. Las entradas desmesuradas se rechazan con un mensaje claro en vez de recortarse en silencio.