Como convertir números binarios a decimales y viceversa El sistema binario es un sistema de numeración en el que los números se representan utilizando 0 y 1. Es el que se utiliza en los ordenadores, pues trabajan internamente con dos niveles de voltaje, por lo que su sistema de numeración natural es el sistema binario (encendido 1, apagado 0). Para convertir de decimal a binario Se divide el número del sistema decimal entre 2, cuyo resultado entero se vuelve a dividir entre 2, y así sucesivamente. Ordenados los restos, del último al primero, éste será el número binario que buscamos. Por ejemplo convertir el número 131 en binario se realiza lo siguiente: Ahora para convertir de un binario a decimal se hace lo siguiente: 1.- Tomamos el número decimal, por ejemplo 00110100100 y lo separamos por cifras: 00110100100 2.- A cada cifra le agregamos un multiplicador por 2 (*2): 0*2 0*2 1*2 1*2 0*2 1*2 0*2 0*2 1*2 0*2 0*2 3.- Luego de derecha a izquierda (muy importante) elevamos cada “2″ a potencias consecutivas, partiendo del cero: 0*2^10 0*2^9 1*2^8 1*2^7 0*2^6 1*2^5 0*2^4 0*2^3 1*2^2 0*2^1 0*2^0 4.- Resolvemos cada uno por separado, solo resolvemos los que tienen un “1″ ya que los que tiene “0″, sea cual sea el resultado de la potencia al multiplicar por este, el resultado será “0″. Entonces, resolviendo solos los “1″ obtenemos los números: 256 128 32 4 5.- Sumamos estos valores: 256+128+32+4 = 420 6.- Para número Binario “00110100100″, su valor como decimal es “420″ Conversión de binario a octal La base de números binarios está representada por 2 y la base de números octales está representada por 8. La tercera potencia de números binarios se denomina como números octales. A fin de convertir el binario número en sus números octales equivalentes, se dividió el número binario en grupos y cada grupo debe contener tres bits binarios y, a continuación, convirtiendo cada grupo en su número octal equivalente de la siguiente conversión tabla producirá el resultado. El siguiente ejemplo permite comprender el binario a octal conversión Ejemplo: Convertir el número binario (111110011001)2 octal equivalente Conversión de binario a octal A fin de obtener el número binario equivalente para el número octal, escribir el dígito octal individual en su equivalente números binarios de la por debajo de la tabla de conversión que le da el número binario equivalente. El siguiente ejemplo permite comprender el hex para conversión binario claro Ejemplo: Convertir el número Hexadecimal (536)8 en su equivalente binario Tabla de Conversión Decimal Binary 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 Métodos Para Convertir Números Decimales A Hexadecimal Y Viceversa El sistema hexadecimal es un sistema de base 16, por lo tanto tiene 16 valores posibles que van del 0 al 9 y de la A la F. Valores hexadecimal: 0 1 2 3 4 5 6 7 8 9 A B C D E F Las letras A B C D E F corresponden a los valores 10, 11, 12, 13, 14, 15 respectivamente. Un valor hexadecimal corresponde a 4 bits, por lo que se convierte en un sistema muy útil para simplificar largas cadenas de binario. A continuación muestro una tabla de ayuda con la correspondencia de 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 Como ocurre con la conversión de binario y octal, en hexadecimal hay varios métodos, en esta entrada pondré dos métodos para convertir de decimal a hexadecimal y otros dos para convertir de hexadecimal a decimal. Convertir números decimales a hexadecimal. Primera forma. La primera forma la haremos a base de dividir el número decimal en 16 (al igual que en binario lo hacíamos entre 2) hasta que no podamos dividir más. Después de realizar las divisiones nos fijamos si hay algún resto superior o igual a 10, si es así, pasaremos cada número a la letra hexadecimal que corresponde. En este ejemplo el resto “13” se convierte al valor “D”. A continuación nos fijamos en los restos de las divisiones y vamos escribiéndolos, siendo el primer número hexadecimal el resto de la última división. El resultado es 74D16). Segunda forma. Esta forma es más sencilla que la anterior y consiste en pasar el número decimal a binario y después convertirlo a hexadecimal. Si aún no sabéis convertir un número decimal a binario os aconsejo que leáis primero esta entrada. Vamos a partir de un numero binario (ya hemos convertido un numero decimal). 1001111010110112). Para pasar de un número binario a decimal debemos hacer agrupaciones de 4 bits, tomando el punto de inicio el último número binario de la derecha. Iremos haciendo agrupaciones de derecha a izquierda. Si el último grupo no llega a 4 bits, los rellenaremos con 0, por ejemplo, si el último grupo de 4 bits es 10, lo rellenaremos con 0 de la siguiente forma 0010 Explicación: Primer grupo -> 1011 corresponde a B (11) en hexadecimal. Segundo grupo -> 0101 corresponde a 5 en hexadecimal. Tercer grupo -> 1111 corresponde a F (15) en hexadecimal. Cuarto grupo -> 100 se transforma en 0100, corresponde a 4 en hexadecimal. El resultado de 1001111010110112) es 4F5B16) cuyo valor decimal es 2031510). Convertir un número hexadecimal en decimal. Primera forma. La forma más sencilla de convertir un número hexadecimal a decimal, es pasando dicho número a binario y después convertirlo en decimal. Vamos a tomar el número hexadecimal A13F16). 1º) Primero lo transformamos el numero hexadecimal a binario. Primer número hexadecimal: A equivale a 10102). Segundo número hexadecimal: 1 equivale a 00012). Tercer número hexadecimal: 3 equivale a 00112). Cuarto numero hexadecimal: F equivale a 11112). El resultado es 10100001001111112). 2º) Convertimos el número binario en decimal. 1×215 + 1×213 + 1×28 + 1×25 + 1×24 + 1×23 + 1×22 + 1×21+ 1×20 = 32768 + 8192 + 256 + 32 + 16 + 8 + 4 + 2 + 1 = 4127910). Resultado: A13F16) equivale a 10100001001111112) cuyo decimal es 4127910). * Observamos que un número hexadecimal simplifica en mayor medida números decimales y binarios. Segunda forma. La segunda forma de convertir números hexadecimales en decimales es haciendo la segunda parte de la primera forma, pero es vez de multiplicar cada valor por 2, lo haremos por 16 ya que es la base hexadecimal, elevado a la posición que corresponda empezando por 0. Tomando el ejemplo anterior: A13F16) Ax163 + 1×162 + 3×161 + Fx160 = 40960 + 256 + 48 + 15 = 4127910) * Para poder multiplicar el valor A y F del ejemplo lo he sustituido por sus valores decimales siendo A = 10 y F = 15. Con esto doy por finalizado las entradas teóricas introductorias para la conversión de distintos tipos de numeración.