De decimal a binario

Hay dos formas de convertir de decimal a binario. Aquí abordaremos ambas. Como verás, una forma es un poco más engorrosa, aunque es más clara respecto a lo que se está haciendo. La otra forma, al ser una serie de operaciones, es más directa pero menos clara. Sin embargo, entender la primera forma te permitirá conocer el por qué del algoritmo más directo que te permite cambiar de decimal a binario.

Invirtiendo el método para convertir de decimal a binario

Cuando convertiste de binario a decimal notaste que hay que hacer una suma de potencias sucesivas de \(2^n\) con \(n\) el índice del dígito empezando a contar en cero de derecha a izquierda. El proceso para pasar de decimal a binario debe ser justo lo opuesto. En lugar de tomar potencias de 2, ahora debemos fijarnos en qué suma de potencias de 2 (es decir, 2 elevado a qué exponente) mejor representa el número.

Toma como ejemplo el número 5 en decimal. ¿A qué exponente debes elevar 2 para que no rebase el valor de 5, pero que sea el exponente más grande que se le aproxime? \(2^0=1\). \(2^1=2\). \(2^2=4\). \(2^3=8\) y ya rebasamos el valor de 5. Así que el exponente es 2. Siguiendo el proceso inverso de cuando convertimos de binario a decimal, ahora sabemos que debemos poner un 1 en el tercer dígito en binario. ¿Y por qué en el tercero si el exponente es 2? Recuerda que empiezas a contar el dígito del extremo derecho como el cero-ésimo y no como el primero.

Así, \(2^2=4\), pero para llegar a 5 nos falta una unidad. Ahora repetimos el proceso pero usando la unidad faltante. \(2^0=1\), ¡y notamos que es justo lo que nos falta para completar el 5 en decimal! Nuevamente, ahora hay que poner un 1 en el primer dígito de nuestro número binario. De forma que tenemos que 101 es la expresión en binario del número 5 en decimal.

En el siguiente interactivo practicarás convirtiendo un número decimal a binario con el método antes expuesto. Presta atención a las instrucciones en la pantalla inicial del interactivo para saber cómo usarlo.


Seguro notaste que, así como para pasar de binario a decimal es necesario usar potencias de 2, para pasar de decimal a binario es necesario tomar las potencias de 2 para ver cuál cabe dentro del número en decimal, representar la potencia en binario, y luego abordar el residuo hasta que la totalidad del número decimal esté representada.

De alguna forma, esto es el proceso inverso de cuando se convierte de binario a decimal, lo cual es esperado. Sin embargo, puede ser algo engorroso estar buscando la potencia de 2 que es igual o queda debajo de tal o cual número, y que es más cercana a éste. ¡Imagina si en vez de número pequeños quisieras convertir 1,235,877 a binario!

El algoritmo para conversión de decimal a binario

Así pues, debe haber alguna receta un poco más directa para encontrar el número en binario sin necesidad de ir tanteando el resultado. A este tipo de procesos directos se les conoce como algoritmos. La razón por la que no se presentó el algoritmo de forma inmediata es para que pudieras notar el por qué de dicho algoritmo, y no lo memorices como sólo una receta que genera un resultado.

Ahondemos un poco en la razón del algoritmo. Cuando convertiste de binario a decimal, sumaste potencias del número 2 dependiendo de si el dígito en binario tenía 1 o 0. Recuerda que una potencia no es más que una multiplicación sucesiva de un número por sí mismo. Para hacer el proceso inverso (ir de decimal a binario), tenemos que hacer divisiones sucesivas entre la base en cuestión (en este caso 2), indicar de alguna forma el residuo que dejó, y abordar el resto del número hasta completar el número en decimal.

Como ejemplo, considera el número 9 en decimal. Lo dividimos entre la base y observamos su residuo: \(\frac{9}{2}=4\) y tenemos un residuo de 1. Sabemos que ese 1 lo podemos representar como \(2^0\), por lo que implicaría que hay que poner un 1 en el dígito de hasta la derecha. El 4 que obtienes resulta de haber dividido una vez por 2. De tal forma que, si se sigue abordando de la misma manera, el residuo de su división deberá ir en el segundo dígito. Y \(\frac{4}{2}=2\) y no sobra nada. Así que el segundo dígito lleva un 0. El último 2 obtenido viene de haber dividido dos veces por 2 (es decir, de haber dividido entre \(2^2\)). Así que lo que venga de abordar ese número debe ir en el tercer dígito (el correspondiente a \(2^2\)). Y \(\frac{2}{2}=1\), y no sobra nada. Así que en el tercer dígito va otro 0. Finalmente, el 1 que nos quedó viene de dividir por \(2^3\). Siguiendo el mismo proceso, \(\frac{1}{2}=0\) y sobra 1, por lo que en el cuarto dígito va un 1 y hemos terminado. Así, 9 en binario es 1001.

En el siguiente interactivo puedes poner en práctica este nuevo abordaje o algoritmo. Sigue las instrucciones en la pantalla que se presenta inicialmente en el interactivo para saber cómo usarlo.


Como seguro notaste, éste método ya no requiere estar tanteando el número como una potencia. Directamente te da un procedimiento a seguir para encontrar el número. Pero es notorio cómo su funcionamiento depende de divisiones sucesivas por la base, que es equivalente a ir encontrando las potencias.

Otra cosa interesante es que en este algoritmo los dígitos se van llenando de derecha a izquierda. En el método inicial, los dígitos se van llenando de izquierda a derecha. Esta diferencia se debe a que al ir dividiendo por 2 cada vez generas potencias más altas de 2, y los exponentes de las potencias crecen de derecha a izquierda.

Finalmente, recuerda que has estado abordando la base binaria. En este caso, el residuo de una división por 2 o es 0 o es 1. Trata de conjeturar cómo funcionarían estos métodos cuando usas una base mayor que 2, como en el caso de la base hex o hexadecimal.

©