Convertidor de decimal, binario, octal y hexadecimal
Las matemáticas son un lenguaje universal que nos permite describir el mundo de múltiples formas. Entre los conceptos fundamentales que necesitamos entender para navegar en este lenguaje se encuentran los sistemas numéricos. A continuación, exploraremos en profundidad los sistemas decimal, binario, octal y hexadecimal, además de cómo convertir entre ellos utilizando herramientas como calculadoras específicas.
- Cómo utilizar la calculadora de conversión
- Comprendiendo los sistemas numéricos
- El sistema decimal
- El sistema binario
- El sistema octal
- El sistema hexadecimal
- Convertir de cualquier base a decimal
- Convertir de decimal a otra base
- Convertir binario a octal
- Convertir octal a binario
- Convertir binario a hexadecimal
- Convertir hexadecimal a binario
- Convertir octal a hexadecimal
- Convertir hexadecimal a octal
- Referencia rápida para dígitos binarios, octales, decimales y hexadecimales
Cómo utilizar la calculadora de conversión
La calculadora de conversión de bases es una herramienta poderosa y fácil de usar. Para comenzar, simplemente ingresa un valor en cualquiera de los campos disponibles: decimal, binario, octal o hexadecimal. La magia ocurre automáticamente, ya que la calculadora mostrará instantáneamente los valores equivalentes en los otros sistemas numéricos. No es necesario presionar ningún botón para activar la conversión; simplemente comienza a editar el campo deseado.
Si deseas convertir un nuevo valor, solo necesitas borrar el campo anterior e ingresar el nuevo número. Esto la convierte en una herramienta extremadamente útil para programadores, estudiantes y cualquier persona que necesite trabajar con diferentes representaciones numéricas.
Comprendiendo los sistemas numéricos
El acto de contar es algo tan intuitivo que rara vez reflexionamos sobre cómo lo hacemos. Sin embargo, el modo en que representamos los números se basa en un conjunto específico de reglas, conocido como sistema numérico.
En el núcleo de cada sistema numérico se encuentra una base (o radix). Esta base determina dos aspectos fundamentales: cuántos símbolos únicos (o dígitos) son utilizables y el multiplicador empleado para el "valor de posición" de cada dígito.
Existen diversos tipos de sistemas numéricos en matemáticas. Los cuatro más comunes son:
- Sistema Decimal (Base-10)
- Sistema Binario (Base-2)
- Sistema Octal (Base-8)
- Sistema Hexadecimal (Base-16)
A continuación, profundizaremos en cada uno de estos sistemas.
El sistema decimal
El sistema decimal es el que utilizamos en nuestra vida cotidiana. Números como 25, 108 o 3,450 son ejemplos de números decimales. La palabra "decimal" proviene del latín "decem", que significa diez, y este sistema utiliza diez dígitos: 0, 1, 2, 3, 4, 5, 6, 7, 8 y 9. Cada posición en un número representa una potencia de 10.
Por ejemplo, en el número 34510, el dígito 5 se encuentra en la posición de las unidades, el 4 en la de las decenas y el 3 en la de los cientos. La expansión de este número es:
34510 = 3 × 102 + 4 × 101 + 5 × 100 = 300 + 40 + 5.
Dominar esta expansión es crucial, ya que emplearás el mismo método para los sistemas binario, octal y hexadecimal.
El sistema binario
A diferencia de los humanos, los ordenadores no comprenden los números de la misma manera. Ellos operan con diminutas señales eléctricas que pueden estar "encendidas" o "apagadas". Por esta razón, los ordenadores utilizan el sistema binario, o sistema base 2, que solo tiene dos dígitos: 0 y 1.
En el sistema binario, los valores de posición son potencias de 2. El bit más a la derecha tiene un valor de 20, que es 1. El siguiente bit a la izquierda tiene un valor de 21, que es 2, y así sucesivamente.
Por ejemplo, el número binario 10102 tiene un 1 en la tercera posición y un 1 en la primera posición. Por tanto, su valor decimal es:
1 × 23 + 0 × 22 + 1 × 21 + 0 × 20 = 8 + 0 + 2 + 0 = 10. Esto explica por qué 10102 es equivalente a 1010.
El sistema octal
El sistema octal, aunque menos común en la actualidad, fue ampliamente utilizado en los primeros días de la computación porque agrupa los dígitos binarios en conjuntos de tres. Este sistema es base 8 y utiliza los dígitos 0, 1, 2, 3, 4, 5, 6 y 7.
Las posiciones en octal representan potencias de 8, que se extienden de la siguiente manera: 80, 81, 82, 83, etc. Para ilustrar esto, consideremos el número 2478.
La expansión sería:
2478 = 2 × 82 + 4 × 81 + 7 × 80 = 128 + 32 + 7 = 16710.
El sistema hexadecimal
En la era moderna, los ordenadores procesan datos en bloques más grandes, como bytes de 8 bits o palabras de 16 bits. Escribir largas cadenas de 1s y 0s puede ser tedioso y propenso a errores. El sistema hexadecimal (a menudo solo llamado "Hex") simplifica esto al condensar cuatro dígitos binarios en un solo carácter, lo que lo convierte en el formato preferido para la programación de microcontroladores y direcciones de memoria.
El sistema hexadecimal es base 16. Como en el sistema decimal solo tenemos diez dígitos, en hexadecimal se requieren símbolos adicionales para representar los valores del diez al quince. Esto incluye los dígitos del 0 al 9 y las letras A, B, C, D, E y F, donde:
- A16 = 1010
- B16 = 1110
- C16 = 1210
- D16 = 1310
- E16 = 1410
- F16 = 1510
Las posiciones en hexadecimal representan potencias de 16, y al convertir un número hexadecimal a decimal, se sigue un proceso similar al de los otros sistemas.
Por ejemplo, al convertir 2FC16 a decimal:
2FC16 = 2 × 162 + 15 × 161 + 12 × 160 = 512 + 240 + 12 = 76410.
Convertir de cualquier base a decimal
La conversión de un número desde binario, octal o hexadecimal a decimal sigue un método uniforme: multiplicar cada dígito por el valor de posición correspondiente y sumar todos los resultados. La base determina cuáles son esos valores de posición.
La regla general es:
$$ (d_nd_{n-1}dots d_2d_1d_0)_b = d_n b^n + d_{n-1} b^{n-1} + dots + d_2 b^2 + d_1 b^1 + d_0 b^0 $$
Donde:
- b es la base.
- d_n, d_{n-1}, dots, d_0 son los dígitos.
Para ilustrar, consideremos el número binario 110102 y convirtámoslo a decimal:
$$ 11010_2 = 1 × 2^4 + 1 × 2^3 + 0 × 2^2 + 1 × 2^1 + 0 × 2^0 $$
Lo que se traduce a:
$$ 11010_2 = 16 + 8 + 0 + 2 + 0 = 26_{10} $$
Sigamos con un ejemplo en octal, convertiendo 3568 a decimal:
$$ 356_8 = 3 × 8^2 + 5 × 8^1 + 6 × 8^0 $$
Esto resulta en:
$$ 356_8 = 192 + 40 + 6 = 238_{10} $$
Por último, tomemos 1A316 y convirtámoslo a decimal:
$$ 1A3_{16} = 1 × 16^2 + A × 16^1 + 3 × 16^0 $$
Que se traduce a:
$$ 1A3_{16} = 256 + 160 + 3 = 419_{10} $$
Convertir de decimal a otra base
Para convertir un número decimal a otra base, se divide repetidamente el número por la nueva base y se anotan los restos. Estos restos se convierten en los dígitos del nuevo número. Es fundamental leer los restos de abajo hacia arriba.
Por ejemplo, para convertir 2610 a binario (base 2), realizamos las siguientes divisiones:
$$ 26 div 2 = 13 text{ resto } 0 $$
$$ 13 div 2 = 6 text{ resto } 1 $$
$$ 6 div 2 = 3 text{ resto } 0 $$
$$ 3 div 2 = 1 text{ resto } 1 $$
$$ 1 div 2 = 0 text{ resto } 1 $$
Al leer los restos de abajo hacia arriba, obtenemos 110102.
$$ 26_{10} = 11010_2 $$
Otro ejemplo: convertir 16710 a octal (base 8):
$$ 167 div 8 = 20 text{ resto } 7 $$
$$ 20 div 8 = 2 text{ resto } 4 $$
$$ 2 div 8 = 0 text{ resto } 2 $$
Los restos en orden inverso nos dan 2478.
$$ 167_{10} = 247_8 $$
Finalmente, convertamos 4710 a hexadecimal (base 16):
$$ 47 div 16 = 2 text{ resto } 15 $$
$$ 2 div 16 = 0 text{ resto } 2 $$
El resto 15 se representa como F en hexadecimal, y leyendo de abajo hacia arriba, obtenemos 2F16.
$$ 47_{10} = 2F_{16} $$
Convertir binario a octal
La conversión entre binario y octal es particularmente sencilla porque 8 es igual a 23. Esto significa que un dígito octal corresponde exactamente a tres dígitos binarios. Para convertir binario a octal, agrupa los dígitos binarios en grupos de tres, comenzando desde la derecha. Si el grupo más a la izquierda tiene menos de tres dígitos, agrega ceros a la izquierda, ya que estos no alteran el valor numérico.
Veamos un ejemplo, convirtiendo 1101012 a octal:
Primero, agrupamos los dígitos:
$$ 110101_2 = (110)(101)_2 $$
Ahora, convertimos cada grupo a su valor octal correspondiente. El grupo 1102 es 68 y 1012 es 58.
Así, obtenemos:
$$ 110101_2 = 65_8 $$
Probemos otro ejemplo: convertir 101112 a octal. Agrupamos desde la derecha, añadiendo un cero a la izquierda para el grupo que tiene solo dos dígitos.
$$ 10111_2 = 010111_2 = (010)(111)_2 $$
Los grupos ahora son 0102 = 28 y 1112 = 78.
Por lo tanto:
$$ 10111_2 = 27_8 $$
Convertir octal a binario
La conversión de octal a binario es el proceso inverso de convertir binario a octal. Dado que cada dígito octal representa tres dígitos binarios, hacemos la conversión reemplazando cada dígito octal por su forma binaria de tres bits.
Por ejemplo, al convertir 658 a binario, tenemos que el dígito 6 es 1102 y el dígito 5 es 1012.
Así,
$$ 6_8 = 110_2 $$
$$ 5_8 = 101_2 $$
Por lo tanto:
$$ 65_8 = 110101_2 $$
Veamos otro ejemplo, convirtiendo 2478 a binario. Cada dígito octal se convierte en un grupo de tres dígitos binarios:
$$ 2_8 = 010_2 $$
$$ 4_8 = 100_2 $$
$$ 7_8 = 111_2 $$
Así,:
$$ 247_8 = 010100111_2 $$
Por lo general, eliminamos ceros a la izquierda de un número binario, por lo que:
$$ 247_8 = 10100111_2 $$
Convertir binario a hexadecimal
El binario y el hexadecimal están estrechamente relacionados porque 16 es igual a 24. Esto significa que un dígito hexadecimal corresponde exactamente a cuatro dígitos binarios. Para convertir de binario a hexadecimal, agrupa los dígitos binarios en grupos de cuatro, comenzando desde la derecha. Si el grupo más a la izquierda no tiene cuatro dígitos, agrega ceros a la izquierda y luego convierte cada grupo a un dígito hexadecimal.
Tomemos el ejemplo de 1011112 y convirtámoslo a hexadecimal:
Primero, agrupamos:
$$ 101111_2 = 00101111_2 $$
$$ 00101111_2 = (0010)(1111)_2 $$
Ahora convertimos cada grupo. El grupo 00102 es 216, y 11112 es 15, que se representa como F en hexadecimal.
Por lo tanto:
$$ 101111_2 = 2F_{16} $$
Veamos otro ejemplo, convirtiendo 110101102 a hexadecimal:
$$ 11010110_2 = (1101)(0110)_2 $$
El grupo 11012 es 13, que se representa como D en hexadecimal, y el grupo 01102 es 6.
Así,:
$$ 11010110_2 = D6_{16} $$
Convertir hexadecimal a binario
Para convertir de hexadecimal a binario, reemplaza cada dígito hexadecimal con su forma binaria de cuatro bits. Este proceso es el inverso de convertir binario a hexadecimal.
Por ejemplo, al convertir 2F16 a binario, el dígito 2 se convierte en 00102 y F se convierte en 11112.
Por lo tanto:
$$ 2_{16} = 0010_2 $$
$$ F_{16} = 1111_2 $$
Así,:
$$ 2F_{16} = 00101111_2 $$
Al eliminar los ceros a la izquierda, obtenemos:
$$ 2F_{16} = 101111_2 $$
Convirtamos ahora A716 a binario. Recordemos que A16 = 1010.
$$ A_{16} = 1010_2 $$
$$ 7_{16} = 0111_2 $$
Así,:
$$ A7_{16} = 10100111_2 $$
Convertir octal a hexadecimal
No existe un atajo de un solo dígito entre octal y hexadecimal como lo hay entre binario y octal o binario y hexadecimal. El método más sencillo suele ser convertir primero de octal a binario y luego de binario a hexadecimal.
Por ejemplo, para convertir 2478 a hexadecimal, primero convertimos cada dígito octal a tres dígitos binarios:
$$ 2_8 = 010_2 $$
$$ 4_8 = 100_2 $$
$$ 7_8 = 111_2 $$
De esta forma:
$$ 247_8 = 010100111_2 $$
Eliminando ceros a la izquierda, tenemos:
$$ 010100111_2 = 10100111_2 $$
Ahora agrupamos el número binario en grupos de cuatro desde la derecha. Añadimos ceros a la izquierda si es necesario:
$$ 10100111_2 = (1010)(0111)_2 $$
Convertimos cada grupo a hexadecimal:
$$ 1010_2 = A_{16} $$
$$ 0111_2 = 7_{16} $$
Entonces:
$$ 247_8 = A7_{16} $$
Convertir hexadecimal a octal
Para convertir de hexadecimal a octal, se puede usar nuevamente el sistema binario como puente. Primero, convierte cada dígito hexadecimal en cuatro dígitos binarios. Luego, reorganiza los dígitos binarios en grupos de tres desde la derecha y finalmente convierte cada grupo en un dígito octal.
Tomemos el ejemplo de A716 y convirtámoslo a octal. Primero convertimos cada dígito hexadecimal a binario:
$$ A_{16} = 1010_2 $$
$$ 7_{16} = 0111_2 $$
Así,:
$$ A7_{16} = 10100111_2 $$
A continuación, agrupamos los dígitos binarios en grupos de tres desde la derecha. Añadimos ceros a la izquierda si es necesario:
$$ 10100111_2 = 010100111_2 $$
$$ 010100111_2 = (010)(100)(111)_2 $$
Ahora, convertimos cada grupo a octal:
$$ 010_2 = 2_8 $$
$$ 100_2 = 4_8 $$
$$ 111_2 = 7_8 $$
Por lo tanto:
$$ A7_{16} = 247_8 $$
Referencia rápida para dígitos binarios, octales, decimales y hexadecimales
Una habilidad útil es conocer los valores del 0 al 15 en decimal, binario, octal y hexadecimal. Esto te ayudará a realizar conversiones rápidas en pequeños grupos. A continuación, se muestra una tabla con estos valores:
| Decimal | Binario | Octal | Hexadecimal |
|---|---|---|---|
| 0 | 0000 | 0 | 0 |
| 1 | 0001 | 1 | 1 |
| 2 | 0010 | 2 | 2 |
| 3 | 0011 | 3 | 3 |
| 4 | 0100 | 4 | 4 |
| 5 | 0101 | 5 | 5 |
| 6 | 0110 | 6 | 6 |
| 7 | 0111 | 7 | 7 |
| 8 | 1000 | 10 | 8 |
| 9 | 1001 | 11 | 9 |
| 10 | 1010 | 12 | A |
| 11 | 1011 | 13 | B |
| 12 | 1100 | 14 | C |
| 13 | 1101 | 15 | D |
| 14 | 1110 | 16 | E |
| 15 | 1111 | 17 | F |

Deja una respuesta