El sistema hexadecimal es una extensión del sistema decimal que utiliza dieciséis dígitos, 0 al 9 y A al F.
Por ejemplo, el número hexadecimal 2F
representa (2 * 16^1) + (F * 16^0) (que es igual a 47
en decimal).
La ventaja del sistema hexadecimal es que da una representación muy compacta. Por este motivo es muy utilizada en programación para representar valores binarios de manera concisa y fácilmente legible.
Además, cada dígito hexadecimal representa cuatro bits (también llamado nibble) en sistema binario. Por lo que, la conversión de hexadecimal a binario es muy muy sencilla.
Conversión entre binario y hexadecimal
Para convertir un número binario a hexadecimal hacemos lo siguiente:
- Dividimos el número binario en grupos de 4 dígitos, comenzando desde la derecha.
- Si el último grupo no tiene 4 dígitos, agregamos ceros a la izquierda para completar 4 dígitos.
- Convertimos cada grupo de 4 dígitos binarios en su equivalente hexadecimal.
Aquí está la tabla de conversión:
Binario (4 bits) | Hexadecimal |
---|---|
0000 | 0 |
0001 | 1 |
0010 | 2 |
0011 | 3 |
0100 | 4 |
0101 | 5 |
0110 | 6 |
0111 | 7 |
1000 | 8 |
1001 | 9 |
1010 | A |
1011 | B |
1100 | C |
1101 | D |
1110 | E |
1111 | F |
Ejemplo de conversión binario a hexadecimal
Convertiremos el número binario 101101011010
a hexadecimal.
Agrupamos en grupos de 4 dígitos:
0001 0110 1011 0100
Convertimos cada grupo:
0001
se convierte en1
0110
se convierte en6
1011
se convierte enB
0100
se convierte en4
Juntamos los valores hexadecimales obtenidos:
16B4
Entonces, 101101011010
en binario es igual a 16B4
en hexadecimal.
Conversión de hexadecimal a binario
Convertir un número hexadecimal a binario no es mucho más difícil. Simplemente hacemos el proceso inverso.
- Convertimos cada dígito hexadecimal en 4 bits con la tabla de conversión anterior.
Ejemplo de conversión hexadecimal a binario
Convertiremos el número hexadecimal 2A7
a binario.
Buscamos los equivalentes de cada dígito hexadecimal a un bloque de 4 bits
2
es0010
A
es1010
7
es0111
Juntamos los bloques de 4 bits,
0010 1010 0111
Por lo que, 2A7
en hexadecimal es igual a 001010100111
en binario.