Binario a hexadecimal: cuatro bits, un dígito, ninguna operación
Qué hace esta conversión
Reagrupa una cadena binaria en bloques de 4 bits y escribe cada bloque como 1 dígito en base 16. No hay más aritmética que una tabla de 16 entradas, y eso hace que sea la conversión que merece la pena hacer a ojo. Es la manera estándar de leer un patrón de bits que ya es demasiado largo para recorrerlo con la vista.
Por qué los grupos de cuatro encajan exactamente
Dieciséis es 2 elevado a la cuarta, así que 4 posiciones binarias corresponden exactamente a 1 dígito en base 16: nunca sobra un bit ni queda un grupo a medias. Por eso el hexadecimal se prefiere al octal para datos orientados a byte, ya que 8 bits se parten en 2 grupos de 4, mientras que 3 no divide a 8. Rellenar con ceros un grupo inicial corto mantiene la alineación sin tocar el valor.
Tabla de conversión de binario a hexadecimal
Los 16 grupos de 4 bits posibles con su dígito hexadecimal. Memorizar esta tabla es toda la habilidad: a partir de ahí, pasar de binario a hexadecimal es transcribir, no calcular.
| Binario | Hexadecimal |
|---|---|
| 0 | 0 |
| 1 | 1 |
| 10 | 2 |
| 11 | 3 |
| 1010 | A |
| 1111 | F |
| 10000 | 10 |
| 101010 | 2A |
| 11111111 | FF |
| 100000000 | 100 |
La conversión que se hace al depurar protocolos binarios
Cuando un campo de protocolo, un registro o una máscara de bits llega en binario y la documentación lo lista en hexadecimal, esta es la traducción que hay en medio. Hacerla por grupos de 4 bits te da además una comprobación continua: si el total de bits no es múltiplo de 4, en algún punto se ha perdido un bit, y eso lo detectas antes de que el valor te engañe.
Rellena el grupo de la izquierda, no lo adivines
Una cadena de 6 bits es un dígito y medio, y eso no existe. Rellena el grupo de la izquierda con ceros hasta llegar a 4 —101011 pasa a 0010 1011— y convierte eso. Adivinar la alineación es la forma de que un valor acabe equivocado por un factor de 16.
Preguntas frecuentes
¿Cómo paso de binario a hexadecimal a mano?
Parte los bits en grupos de cuatro empezando por la derecha, rellena con ceros el grupo de más a la izquierda si es corto y sustituye cada grupo por su dígito hexadecimal. 10011100 se convierte en 1001 1100, que es 9C.
¿Por qué se agrupa desde la derecha y no desde la izquierda?
Porque el extremo derecho contiene los pesos más bajos y la agrupación tiene que seguir el valor posicional para tener sentido. Agrupar desde la izquierda desplaza todos los dígitos cuando la longitud no es múltiplo de 4, lo que cambia el número en silencio en lugar de limitarse a desalinearlo.
¿Cuántos dígitos hexadecimales necesita un byte?
Exactamente 2, porque un byte son 8 bits y 4 bits forman 1 dígito. Esa relación fija es la razón de que el hexadecimal se volviera la notación por defecto de los datos orientados a byte, y de que un volcado de memoria se lea como una sucesión de parejas de dígitos.
¿Maneja cadenas de bits largas?
Sí. Un valor de 64 bits se convierte en 16 dígitos hexadecimales y la conversión es exacta, no aproximada: la herramienta usa aritmética entera de principio a fin, así que no se pierde nada en el extremo alto del rango, donde la coma flotante empezaría a redondear.
¿Puedo pegar binario que ya lleva espacios?
Sí. Los espacios y los guiones bajos se eliminan antes de convertir, así que el binario copiado de un terminal, de una hoja de datos o de un diff funciona sin tener que arreglarlo antes. La agrupación que veas en el origen no afecta al valor.