Un número binario x puede convertirse en decimal efectuando la suma de las potencias cuyo valor es uno.
Ejemplo :
(1010.011)2 = 1*23+0*22+1*21+0*20+0*2–1+1*2–2+1*2–3
= 8+0+2+0+0+0.25+0.125
= 10.375
Para los números expresados en base r podríamos efectuar su conversión a decimal multiplicando cada coeficiente por la potencia correspondiente de r y sumando.
Ejemplo :
(630.4)8 = 6*82+3*81+0*80+4*8–1
= 384+24+0.5 = 408.5
Cuando deseamos efectuar la conversión de decimal a binario o ha cualquier otro sistema con base r es mas conveniente si el número se separa en parte entera y en una parte fraccionaria, y la conversión de cada parte se efectúa por separado :
Ejemplo :
Convertir el numero (41)10 a binario
41 1 LSB
20 0
10 0
5 1
2 0
1 1 MSB
(41)10 = (101001)2
Para convertir cualquier entero decimal han cualquier sistema de base r la división se hace entre r en lugar de 2.
Ejemplo :
Convertir el numero (153)10 a base 8
153 1 LSB 198 3
2 2 MSB
(153)10=(231)8
Para convertir una fracción decimal a binario, el sistema que se sigue es similar al que utilizamos para los enteros, sin embargo, se usa la multiplicación en lugar de la división, y los enteros se acumulan en lugar de los residuos.
Ejemplo :
convertir (0.6875)10 a base 2
Entero Fracción Coeficiente 0.6875 *2 1 0.3750 a-1 = 1 0.3750 *2 0 0.75a-2 = 0 0.75 *2 1 0.5a-3 = 1 0.5 *2 1 0.0a-4 = 1 (0.6875)10=(0.1011)2
Cuando deseamos convertir una fracción decimal en número expresado en base r, el procedimiento es similar, la multiplicación se hace con r en lugar de 2 y los coeficientes se encuentran con los enteros.
Ejemplo :
convertir (0.513)10 a base 8
Entero Fracción Coeficiente 0.513 * 8 4 0.104 a-1 = 4 0.104 * 8 0 0.832 a-2 = 0 0.832 * 8 6 0.656 a-3 = 6 0.656 * 8 5 0.248 a-4 = 5 0.248 * 8 1 0.984 a-5 = 1 0.984 * 8 7 0.872 a-6 = 7
Cuando deseamos hacer la conversión de un número decimal de una parte entera y una parte fraccionaria la conversión se hace por separado y posteriormente se combinan las dos respuestas.
Ejemplo :
(41.6875)10 → (101001.1011)2
Números octales y hexadecimales.
Las conversiones entre código binario, octal y hexadecimal es muy importante en las comparaciones digitales, ya que cada dígito octal corresponde a tres dígitos binarios y a cada dígito hexadecimal corresponde cuatro dígitos binarios.
(10110001101011.111100000110)2 → (26153.7406)8
Cuando deseamos convertir un número binario a hexadecimal, el proceso es similar excepto que el número binario se divide en grupos de 4.
(10110001101011.11110010)2 → (2C6B.F2)16
La conversión a hexadecimal en binario se realiza con un procedimiento inverso al anterior esto es ; cada dígito octal se convierte en su equivalente binario de tres dígitos y cada dígito hexadecimal se convierte en su equivalente binario de cuatro dígitos.
Ejemplo :
(613.124)8 → (110001011.001010100)2 (306.D)16 →(001100000110.1101)2
Los números binarios son difíciles de manejar ya que se requiere dos o cuatro veces mas dígitos que su equivalente decimal.
Ejemplo :
(111111111111)2 → (4095)10
Una forma de reducir esta deficiencia es emplear la relación entre el sistema de números binarios con el sistema octal o hexadecimal.
El número binario (111111111111)2 tiene 12 dígitos y los podemos expresar en octal (7777)8 (cuatro dígitos) o en hexadecimal como (FFF)16 (tres dígitos), la representación octal o hexadecimal es mas deseable ya que se representa en forma mas compacta, como un tercio o un cuarto del número de dígitos requeridos por el número binario equivalente.