De hex a decimal
Parte de la sección Fundamentos del Journey de Assembly de Coddy — lección 11 de 45.
El hexadecimal (base 16) funciona de la misma manera que el binario y el decimal: cada posición tiene un valor posicional. En hexadecimal, cada posición es una potencia de 16.
Valores posicionales en hexadecimal:
| Posición | Potencia de 16 | Valor decimal |
|---|---|---|
| Extremo derecho | 16⁰ | 1 |
| Siguiente | 16¹ | 16 |
| Siguiente | 16² | 256 |
| Siguiente | 16³ | 4096 |
Valores de dígitos hexadecimales para recordar:
| Hex | Decimal |
|---|---|
| 0-9 | 0-9 |
| A | 10 |
| B | 11 |
| C | 12 |
| D | 13 |
| E | 14 |
| F | 15 |
Ejemplo 1: Convertir <strong>0x2A</strong> a decimal
| Posición | Dígito hexadecimal | Valor posicional | Cálculo |
|---|---|---|---|
| Izquierda | 2 | 16 | 2 × 16 = 32 |
| Derecha | A (10) | 1 | 10 × 1 = 10 |
| Total | 32 + 10 = 42 |
Por lo tanto, 0x2A = 42 en decimal.
Ejemplo 2: Convertir <strong>0xFF</strong> a decimal
| Posición | Dígito hexadecimal | Valor posicional | Cálculo |
|---|---|---|---|
| Izquierda | F (15) | 16 | 15 × 16 = 240 |
| Derecha | F (15) | 1 | 15 × 1 = 15 |
| Total | 240 + 15 = 255 |
Por lo tanto, 0xFF = 255 en decimal.
Ejemplo 3: Convertir <strong>0x3E8</strong> a decimal
| Posición | Dígito hexadecimal | Valor posicional | Cálculo |
|---|---|---|---|
| Izquierda | 3 | 256 | 3 × 256 = 768 |
| Medio | E (14) | 16 | 14 × 16 = 224 |
| Derecha | 8 | 1 | 8 × 1 = 8 |
| Total | 768 + 224 + 8 = 1000 |
Por lo tanto, 0x3E8 = 1000 en decimal.
La fórmula:
Para un número hexadecimal con dígitos ... d₂ d₁ d₀:
Valor = (... + d₂ × 16² + d₁ × 16¹ + d₀ × 16⁰)
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 hex