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 0100Convertimos cada grupo:
0001se convierte en10110se convierte en61011se convierte enB0100se 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
2es0010Aes10107es0111
Juntamos los bloques de 4 bits,
0010 1010 0111
Por lo que, 2A7 en hexadecimal es igual a 001010100111 en binario.