Binario a Decimal dos métodos y ejemplos

Binario a Decimal el método tradicional

Binario a decimal involucra conocer la posición y por consecuencia el valor del bit binario. Te presentaremos dos métodos. Si la posición comienza de derecha a izquierda, el numero se conoce como un arreglo big-endian. Por el contrario en un arreglo little-endian, el acomodo es opuesto. Una vez que tenemos la posición elevaremos la base 2 (2 es por los dos posibles estados del sistema binario) a la posición en la que este el bit. El segundo paso es multiplicar el bit binario, ya sea 1 o 0 por este valor. En resumen:

  1. Obtener la posición.
  2. Obtener el valor del bit. 2^posición.
  3. Multiplicar el valor del bit (1 ó 0) por el valor anterior.
  4. Sumar cada uno de los resultados de los bits a convertir.

En la siguiente figura se muestra el proceso completo así como el resultado.

Binario a Decimal, proceso de conversión tradicional

Ejemplos método tradicional

Como se puede apreciar del proceso anterior, la conversión se complica para números de 16 o 31 bits. Esto es por la cantidad de operaciones que se tiene que realizar. Para convertir números de 4 bits, el proceso es más sencillo. Si te interesa saber más sobre el código binario, tenemos un tutorial.  Vea los siguientes ejemplos:

Ejemplo-1.

Convertir de binario a decimal el siguiente valor 1010 .

Solucíón-1. Un numero binario de 4 posiciones tiene valores fijos. Por ejemplo 8421 para cada una de las posiciones 3210. Entonces lo más fácil para numeros de 4 bits, es acordarse de esta codificación. Así el numero 1010 es en realidad la suma de 1×8+1×2 = 10.

1×8 + 0x4 + 1×2 + 0x1 = 10

Ejemplo-2.

Convertir de binario a decimal el siguiente valor 1101 1001.

Solución-2. El proceso se comienza a complicar cuando tenemos números binarios de una longitud mayor a 8. Esto es debido a que ahora tenemos que verificar la posición de cada uno de los 8 bits. El proceso seria:

1×2^7 + 1×2^6 + 0x2^5 + 1×2^4 + 1×2^3 +0x2^2 + 0x2^1 + 1×2^0 = 128 + 64 + 0 + 16 + 8 + 0 + 0 + 1 = 217

Binario a Decimal el método más fácil para números grandes

Ejemplo-3.

Convertir de binario a decimal el siguiente dato o numero 101011001100101.

Solución-3. La conversión ya se va complicando. Para este numero, lo primero es acomodar el numero en grupos de 4 bits (nibble). El proceso comienza de derecha a izquierda. Por lo tanto tendremos:

101011001100101 = 101  0110  0110  0101

El numero inicial ya tiene una estructura para poder verificar las posiciones. Por ejemplo, el numero binario esta compuesto por 15 bits o dígitos. Por lo tanto tendremos posiciones desde la 0 hasta la 14. Para comenzar, vamos a dividir la conversión en 4 conversiones. Entonces la conversión seria:

1×2^14 + 0x2^13 + 1×2^12 = 16384 + 4096 = 20,480

0x2^11 + 1×2^10 + 1×2^9 + 0x2^8 =  1024 + 512 = 1,536

0x2^7 + 1×2^6 + 1×2^5 + 0x2^4 = 64+32 =  96

0x2^3 + 1×2^2 + 0x2^1 + 1×2^0 =  4 + 1 = 5

20,480 + 1,536 + 96 + 5 = 22,117

Wow, estás fueron muchas operaciones. El proceso tradicional es algo complicado y tardado para números binarios largos. A continuación se presenta un método alternativo.

Binario a decimal método fácil para números grandes

Esté método contempla menos operaciones al convertir el numero binario, primero de binario a hexadecimal y posteriormente de hexadecimal a binario. Vamos a tomar el Ejemplo-3.

Ejemplo-4

Convertir el numero binario 101011001100101 a decimal.

Solución-4. Primero separaremos en nibbles al numero anterior: 101011001100101 = 101  0110  0110  0101

Recordemos la codificación 8421 para un numero de 4 bits con posiciones 3210. Entonces podemos convertir rápidamente cada nibble a su numero hexadecimal correspondiente, es decir:

101 = 4+1 = 5

0110 = 4+2 = 6

0110 = 4+2 = 6

0101 = 4+1 = 5

Por lo tanto, el numero binario 101  0110  0110  0101 se convierte en hexadecimal a : 5665. Para convertirlo a decimal, es similar al proceso tradicional de binario a decimal. Por el contrario al método tradicional de binario a decimal, ahora se usará de base el numero 16, debido a que la base de un numero hexadecimal es 16.

5665 de hexadecimal a decimal es:

5×16^3 + 6×16^2 + 6×16^1 + 5×16^0 = 20.480 + 1,536 + 96 + 5 = 22,117

Ejercicios:

  1. 10111111001010101.    R1 = 97877.
  2. 1000010011101110.    R2 = 34030.
  3. 1001. R3 = 9.
  4. 1100110011001100.   R3. 52428.
  5. 1111 1111 1111 1111. R4 = 65535.

Autor:

Dr. Rubén E-Marmolejo.

Profesor Universidad de Guadalajara.

 

 

Escríbenos tus dudas o comentarios

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Usamos Cookies en nuestro sitio WEB

Por favor confirma, si aceptas nuestras cookies de rastreo. También puedes negar el uso de cookies de rastreo y seguir navegando sin que ninguna información sea enviada a servicios de terceros.