¿Por qué hexadecimal?
Parte de la sección Fundamentos del Journey de Assembly de Coddy. Lección 10 de 45.
Ahora sabes que las computadoras usan binario. Entonces, ¿por qué los programadores de ensamblador rara vez escriben binario directamente?
El problema con el binario:
Los números binarios son muy largos. Mira este ejemplo:
| Número | Binario |
|---|---|
| 255 | 11111111 |
| 1000 | 1111101000 |
| 65535 | 1111111111111111 |
Escribir cadenas largas de 1 y 0 es lento, propenso a errores y difícil de leer.
La solución: hexadecimal (base 16).
El sistema hexadecimal (o «hex») utiliza 16 símbolos:
| bits | Valor |
|---|---|
| 0-9 | 0 a 9 |
| A | 10 |
| B | 11 |
| C | 12 |
| D | 13 |
| E | 14 |
| F | 15 |
Por qué hex es perfecto para las computadoras:
Un digit hex representa exactamente 4 bits (la mitad de un byte).
| bits | digits hex necesarios |
|---|---|
| 4 bits (nibble) | 1 digit hex |
| 8 bits (1 byte) | 2 digits hex |
| 16 bits (2 bytes) | 4 digits hex |
| 32 bits (4 bytes) | 8 digits hex |
| 64 bits (8 bytes) | 16 digits hex |
El mismo número, de tres formas:
| Decimal | Binario | Hexadecimal |
|---|---|---|
| 255 | 11111111 | FF |
| 1000 | 1111101000 | 3E8 |
| 65535 | 1111111111111111 | FFFF |
Observa cuánto más corto es hex que el binario.
Dónde verás hex en ensamblador:
- Direcciones de memoria (como
0x7FFFo0x402000) - Códigos ASCII (como
0x41para 'A',0x0apara un salto de línea)
- Valores de registros en depuradores
- Valores de color (como
0xFF0000para el rojo)
hex se escribe con un prefijo:
| Prefijo | Ejemplo | Significado |
|---|---|---|
0x | 0xFF | FF en hex (255 en decimal) |
$ | $FF | Lo mismo (usado en algunos ensambladores) |
h | FFh | Lo mismo (estilo antiguo) |
En este curso, usamos el prefijo 0x: 0x0a, 0x41, 0xFF.
Pruébalo tú mismo
Esta lección no incluye un desafío de código.
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
1La máquina
¿Qué es la CPU?MemoriaRegistros vs. MemoriaCómo funcionan las instruccionesPatrón de dos archivosLa arquitectura x86-642Sistemas de numeración
¿Por qué binario?Números binariosDe decimal a binario¿Por qué hexadecimal?De hex a decimalDe decimal a hexASCII y hexPractica por tu cuenta: Playground de Assembly