En este capitulo, se explicará como convertir números decimales como 0.325, 0.545, 0.321, 4.56, 3.21, etc. a otro sistema de numeración y viceversa.
‒ Conversión de base decimal a base n.
El numero decimal puede ser exacto, periódico puro y periódico mixto. Lo primero que se debe hacer es convertir la parte entera a decimal por separado, tal como se explico en las capítulos anteriores. Luego se convierte la parte decimal del número, multiplicando el número por la base a convertir, del resultado se toma la parte entera como la nueva cifra del número a convertir y su parte decimal se vuelve a multiplicar por la base a convertir, y así sucesivamente hasta que se llegue a cero, o se comience a repetir periodos o en su defecto hasta la cifra que se pida.
Ejemplo 1
Convertir 2.3 a base 8
Primero la parte entera queda igual ya que 2 en base 8 es 28
Para la parte decimal operamos con 0.3
0.3 x 8 = 2.4 → 2
0.4 x 8 = 3.2 → 3
0.2 x 8 = 1.6 → 1
0.6 x 8 = 4.8 → 4
0.8 x 8 = 6.4 → 6
0.4 x 8 = 3.2 → 3 desde aquí se repiten las cifras
...
a partir del 3 las cifras se repiten, con lo que tendremos 0.3 = 0.231468
Colocando la parte entera y la parte decimal tenemos.
2.3 = 2.231468
Ejemplo 2
Convertir 4.25 a base 3
Convertimos la parte entera 4 a base 3.
3/3=1 residuo 0 entonces 4=103
Para la parte decimal operamos con 0.25
0.25 x 3 = 23/90 x 3 = 23/30 = 0.76 → 0
0.76 x 3 = 69/90 x 3 = 23/10 = 2.3 → 2
0.3 x 3 = 0.9 → 0
0.9 x 3 = 2.7 → 2
0.7 x 3 = 2.1 → 2
0.1 x 3 = 0.3 → 0
0.3 x 3 = 0.9 → 0 desde aquí se repiten las cifras
...
a partir del 0 las cifras se repiten, con lo que tendremos 0.25 = 0.0202203
Colocando la parte entera y la parte decimal tenemos.
4.25= 10.0202203
Ejemplo 3
Convertir 1.61 a base hexadecimal.
Tomamos 0.61 para hallar la parte decimal.
0.61 x 16 = 55/90 x 16 = 9.7 → 9
0.7 x 16 = 7/9 x 16 = 12.4 → 12=C
0.4 x 16 = 4/9 x 16 = 7.1 → 7
0.1 x 16 = 1/9 x 16 = 1.7 → 1
0.7 x 16 = 7/9 x 16 = 12.4 → 12=C desde aquí se repiten las cifras
...
a partir del 12 las cifras se repiten, con lo que tendremos 0.61 = 0.9C7116
Colocando la parte entera y la parte decimal tenemos.
1.61 = 1.9C7116
‒ Conversión de base n a decimal.
La manera de convertir un número decimal de base n a otro de base decimal, es por la descomposición polinómica. Podemos convertir la parte entera usando el método de Ruffini y la parte decimal con descomposición polinómica. Para descomponer la parte decimal polinomicamente, se usan los exponentes en negativo, es decir la última cifra de la parte entera se multiplica por la base con exponente 0, luego la cifra siguiente a la derecha que corresponde a la parte decimal del número, se multiplica por la base con exponente -1, la siguiente cifra por la base con exponente -2 y así sucesivamente hasta terminar con todas las cifras.
Se debe tener en cuenta que las conversiones de números decimales periódicos puros y mixtos de una base n a decimal pierden precisión, y cuanto mas cifras usemos del periodo para la conversión se obtendrán conversiones más cercanas al número en base 10.
Ejemplo 1
Convertir 0.1012 a base decimal
Descomponemos el número polinomicamente.
0x20+1x2-1+0x2-2+1x2-3 = 0+1/2+0+1/8 = 0+0.5+0+0.125=0.625
Entonces 0.1012 = 0.625
Ejemplo 2
Convertir 2.F216 a base decimal
Descomponemos el número polinomicamente.
2x160+15x16-1+2x16-2 = 2+15/16+2/256 = 2+0.9375+0.0078125 = 2.9453125
Entonces 2.F216 = 2.9453125
Ejemplo 3
Convertir 1.123 a base decimal, con tres cifras decimales o mejor dicho a las milésimas
Descomponemos el número polinomicamente.
1x30+1x3-1+2x3-2 = 1+1/3+2/9 = 1+0.333+0.222 = 1.555
Entonces 1.123 = 1.555 aprox. Se debe tener en cuenta, que si convertimos este número a base 3 siempre se perderá precisión.
‒ Conversión de base n a base k.
Lo que se tiene que hacer es convertir el número decimal en base n a un numero en base 10, para luego convertirlo a la otra base.
Ejemplo 1
Convertir 1.356 a base hexadecimal
Lo primero que debemos hacer es convertir el número a base decimal o base 10
1x60+3x6-1+5x6-2 = 1+3/6+5/36 = 1.638
Luego lo convertimos a la base solicitada
La parte entera es 1 en hexadecimal.
Tomamos 0.638 para hallar la parte decimal.
0.638 x 16 = 23/36 x 16 = 10.2 → 10=A
0.2 x 16 = 2/9 x 16 = 3.5 → 3
0.5 x 16 = 5/9 x 16 = 8.8 → 8
0.8 x 16 = 8/9 x 16 = 14.2 → 14=E
0.2 x 16 = 2/9 x 16 = 3.5 → 3
...
a partir del 3 las cifras se repiten, con lo que tendremos 0.638 = 0.A38E16
Colocando la parte entera y la parte decimal tenemos.
1.638 = 1.A38E16
con lo que 1.356 = 1.A38E16
Ejemplo 2
Convertir 1.012 a base 8
Lo primero que haremos es convertir el número a base decimal o base 10
1x20+0x2-1+1x2-2 = 1+0+1/4 = 1.25
Luego lo convertimos a la base solicitada
La parte entera es 1 en base 8.
Tomamos 0.25 para hallar la parte decimal.
0.25 x 8 = 2.0→ 2
0.0 x 8 = 0
Colocando la parte entera y la parte decimal tenemos.
1.25 = 1.28
con lo que 1.012 = 1.28
Ejemplo 3
Convertir 1.F16 a base 2
Lo primero que haremos es convertir el número a base decimal o base 10
1x160+15x16-1 = 1+15/16 = 1.9375
Luego lo convertimos a la base solicitada
La parte entera es 1 en base 2.
Tomamos 0.9375 para hallar la parte decimal.
0.9375 x 2 = 1.875→ 1
0.875 x 2 = 1.75 → 1
0.75 x 2 = 1.50 → 1
0.5 x 2 = 1.0 → 1
0.0 x 2 = 0
Colocando la parte entera y la parte decimal tenemos.
1.9375 = 1.11112
con lo que 1.F16 = 1.11112