2.4 Conversión de sistemas de numeración

La conversión entre sistemas de numeración consiste en escribir el equivalente de un número expresado en una base de origen a un numero en una base destino.

En esta seccion veremos:

 

2.4.1 Conversión al decimal

Se realiza convirtiendo el vector de pesos del sistema origen al decimal.

 

a) Conversión de binario a decimal

Así entonces :

10110,012= 1 * 2^4 + 0* 2^3 + 1 * 2^2 + 1 * 2^1 + 0 * 2^0 , 0 * 2^-1 + 1 * 2^-2

10110,012= 16 + 0 + 4 + 2 + 0, 0 + 0,5 = 22,2510

Para facilitar el cálculo

Vector de pesos
2^5
2^4
2^3
2^2
2^1
2^0
2^-1
2^-2
2^-3
Equivalente Decimal
32
16
8
4
2
1
0,5
0,25
0,125

lo en esta tabla se listan potencias de 2

Potencia
Valor decimal
Representación
2 ^ -10
0.0009765625
0.0000000001
2 ^ -9
0.001953125
0.000000001
2 ^ -8
0.00390625
0.00000001
2 ^ -7
0.0078125
0.0000001
2 ^ -6
0.015625
0.000001
2 ^ -5
0.03125
0.00001
2 ^ -4
0.0625
0.0001
2 ^ -3
0.125
0.001
2 ^ -2
0.25
0.01
2 ^ -1
0.5
0.1
2 ^ 0
1
1
2 ^ 1
2
10
2 ^ 2
4
100
2 ^ 3
8
1000
2 ^ 4
16
10000
2 ^ 5
32
100000
2 ^ 6
64
1000000
2 ^ 7
128
10000000
2 ^ 8
256
100000000
2 ^ 9
512
1000000000
2 ^ 10
1024
10000000000

Un ejemplo más simple: 1000 (binario) a decimal:


 

b) Conversión de octal a decimal

231,458 = ( 2x8^2 + 3x8^1 + 1x8^0 + 4x8^-1 + 5x8^-2 )10
231,458 =( 2x64 + 3x8 + 1x1 + 4x1/8 + 5x1/82 )10
231,458 =( 128 + 24 + 1 + 4x0.125 + 5x0.015625 )10
231,458 =153.5781210


c) Conversión de hexadecimal a decimal

73,D516 = ( 7x16^1 + 3x16^0 + Dx16^-1 + 5x16^-2 )10
73,D516 = 115.8320310

 

2.4.2 Conversión del decimal a otro de base n

El siguiente algoritmo para convertir un número N10 a su representación en una base distinta de 10, distingue entre la parte entera y la parte fraccionaria de N10.

1) Parte Entera:

Se divide la parte entera de N10 por la base n.
El cociente obtenido se divide nuevamente por n. Así sucesivamente, cada cociente se divide por n, hasta obtener cociente 0.
La sucesión de residuos, en orden inverso, es la representación en la base n, de la parte entera de N10.
Por ejemplo, aquí se convierte el numero 8 (decimal) a binario:

2) Parte fraccionaria:

Se multiplica la parte fraccionaria de N10 por la base n, y se considera la parte entera de este producto. La parte fraccionaria del producto se multiplica nuevamente por la base n, hasta obtener parte fraccionaria cero o igual a una anterior.
La sucesión de las partes enteras de los productos, en el orden en que fueron efectuados, es la representación en la base n, de la parte fraccionaria de N10.

Observación: Es claro que si N10 es un número entero, sólo aplicaremos 1), y si N10 tiene parte entera nula, sólo aplicaremos 2).


2.4.2.1 Ejemplos de Decimal a Binario:

a) Sea en número N10=218,6875:

a1) Parte entera: 21810

Divisiones
Cocientes
Residuos
218/2
109
0
109/2
54
1
54/2
27
0
27/2
13
1
13/2
6
1
6/2
3
0
3/2
1
1
1/2
0
1

Fin (Cociente 0)

Luego 21810=110110102

a2) Parte fraccionaria: 0,687510

Multiplicaciones
Partes enteras
0,6875x2=1,3750
1
0,3750x2=0,7500
0
0,7500x2=1,5000
1
0,5000x2=1,0000
1

Fin (parte fraccionaria igual a cero)

Luego 0,687510=0,10112 ; Por lo tanto 218,687510=11011010,10112

 

b) Sea ahora el número 83,610

b1) Parte entera: 8310

Divisiones
Cocientes
Residuos
83/2
41
1
41/2
20
1
20/2
10
0
10/2
5
0
5/2
2
1
2/2
1
0
1/2
0
1

Fin el cociente es cero
Luego 8310=10100112

b2) Parte fraccionaria: 0,610

Multiplicaciones
Partes enteras
Notas
0,6x2=1,2
1

 

 


< Desde acá se repite
una parte fraccionaria.
Luego los dígitos en
binario se repetirán
indefinidamente...

0,2x2=0,4
0
0,4x2=0,8
0
0,8x2=1,6
1
0,6x2=1,2
1
0,6 0,2x2=0,4
0
0,4x2=0,8
0
0,8x2=1,6
1
...
...

Luego 0,610=0,1001 1001 1001 ... 2 (binario periódico)
Escribimos 0,610=0,10012

Por lo tanto 83,610=1010011,10011001... 2


REGLA PRACTICA

1) Parte entera:

Se busca la mayor potencia de 2 que no exceda a N10. Esta potencia se resta de N10. Al resultado se le vuelve a restar la mayor potencia de 2 que no lo supere. Se procede así hasta obtener una diferencia 0.
El equivalente binario del entero N10 se encuentra escribiendo 1 para las potencias de 2 que hayan sido restadas y 0 para las demás.
Ejemplo: Sea N10=4910.

49
-32
(1x2^5)
17
-16
(1x2^4)
1
-1
(1x2^0)
0

(Fin diferencia = 0). Luego:

4910= ( 1*2^5 + 1*2^4 + 0*2^3 + 0*2^2 + 0*2^1 + 1*2^0 )10
4910= 1100012

2)Parte fraccionaria:

Se va realizando una sumatoria de las potencias de 2 negativas comenzando desde el valor -1, mientras la sumatoria no supere a la parte fraccionaria, hasta que se iguale a dicha parte fraccionaria o se alcance una precisión deseada. Cuando al sumar una potencia la sumatoria no exceda a la parte fraccionaria se debe tomar como dígito un 1, si al sumar la potencia la sumatoria excede a la parte fraccionaria, implica que el dígito debe tomarse igual a 0.

Sea N10=0,6875:

2^-1 = 0,5              S=0,5                                  No excede, dígito es 1
2^-2 = 0,25            S=0,5+0,25=0,75              Si excede, dígito es   0
2^-3 = 0,125          S=0,5+0,125=0,625          No excede, dígito es 1
2^-4 = 0,0625        S=0,625+0,0625=0,6875 No excede, dígito es 1.
Fin. El valor de S igualo a la parte fraccionaria.

Luego N10 = 0,687510 = 0,10112

Observación: En algunos casos es necesario infinitos términos para que la sumatoria alcance la parte fraccionaria. En este caso se debe truncar a un cierto número de cifras, y por consiguiente no se puede alcanzar la igualdad. Un caso particular de infinitas cifras es cuando existe un período (grupos de cifras que se repiten).

Ejemplo: N10 = 0,6 = 0,100110011001... 2


2.4.2.2 Ejemplos de Decimal a Octal

Sea 153,437510

b1) Parte entera

Divisiones
Cocientes
Residuos
153/8 19 1
19/8 2 3
2/8 0 2

Fin (cociente 0). Luego 15310=2318

b2) Parte fraccionaria

Multiplicaciones
Partes enteras
0,4375 x 8 =3,5
3
0,5 x 8 = 4,0
4

Fin (parte fraccionaria igual a cero).
Luego 0,437510=0,348;

Por lo tanto 153,437510 = 231,348

2.4.2.3 Ejemplos de Decimal a Hexadecimal


Sea 967,310

c1) Parte entera:

Divisiones
Cocientes
Residuos
967/16
60
7
60/16
3
C (=12)
3/16
0
3

Luego 96710=3C716

c2) Parte fraccionaria:

Multiplicaciones
Partes enteras
0,3x16=4,8
4
0,8x16=12,8
C(=12)
0,8x16=12,8
C(=12)

Luego 0,310= 0,4CCC…16(periódico hexadecimal);

Por lo tanto 967,310 = 3C7,4CCCC...16

 

2.4.3 Conversión entre binario, octal y hexadecimal


2.4.3.1 Octal a binario

Como 8=2^3, cada dígito octal tiene una única representación binaria de 3 bits (3 dígitos binarios), como indica la siguiente tabla:

Octal
Binario
0
000
1
001
2
010
3
011
4
100
5
101
6
110
7
111

De esta manera, cada dígito octal puede pensarse como una notación abreviada para el valor equivalente en 3 bits, que figura en la tabla.
Según esto, para convertir un número octal a su forma binaria, directamente reemplazamos cada dígito octal por su correspondiente binario.

Sea 4206,318 tendremos:

Octal __________
4
2
0
6
,
3
1
Binario_________
100
010
000
110
,
011
001

Luego 4206,318=100010000110,0110012


2.4.3.2 Hexadecimal a binario

Como 16=2^4, cada dígito hexadecimal tiene una única representación binaria de 4 bits (4 dígitos binarios), como indica la siguiente tabla:

Hexadecimal
Binario
0
0000
1
0001
2
0010
3
0011
4
0100
5
0101
6
0110
7
0111
8
1000
9
1001
A
1010
B
1011
C
1100
D
1101
E
1110
F
1111


Luego, para convertir un número hexadecimal a su forma binaria, directamente reemplazamos cada dígito hexadecimal por su equivalente binario.

Sea 27,A316

Hexadecimal _______
2
7
,
A
3
Binario____________
0010
0111
,
1010
0011

Luego 27,A316=00100111,101000112

 

2.4.3.3 De binario a Octal

Un número binario se representa en su forma octal, particionandolo en bloques de 3 bits. Se comienza desde el punto binario hacia la izquierda y hacia la derecha. Se agregan ceros al comienzo o al final si es necesario.
Luego se reemplaza cada bloque por el dígito octal equivalente.

Ejemplo: 11011,01012 = 011 011 , 010 1002
                                         3     3   ,    2     4    = 33,248

2.4.3.4 De binario a Hexadecimal

Un número binario se representa en su forma hexadecimal particionandolo en bloques de 4 bits y reemplazándolos luego cada bloque por el dígito hexadecimal equivalente.Esto es

2.4.4 Resumen de Conversión entre los Sistemas de Numeración

 

2.4.5 Practica:

1) Realizar las siguientes conversiones:

a) 11101101,011 (2 >>> 10)
b) 175,346 (8 >>> 10)
c) 8CF,AB (16 >>> 10)
d) 28,35 (10 >>> 2)
e) 12855,86 (10 >>> 8)
f) 5422,854 (10 >>> 16)

g) 1001,11101 (2 >>> 8)
h) 11011,01011 (2 >>> 16)
i) 175,364 (8 >>> 2)
j) 28A,B (16 >>> 2)
k) 1B2,FA (16 >>> 8)
l) 175,346 (8 >>> 16)

1) Convertir los decimales 1356 y 875 a hexadecimales
2) Convertir el hexadecimal FFFF a decimal
3) Convertir los decimales 12,75 y 235,125 a binarios
4) Convertir los decimales 0,9 y 0,1 a binarios