You are on page 1of 11

SISTEMAS DE CONVERSION NUMERICA

PRESENTADO POR:

VICTOR ALFONSO PEREZ TERNERA

PRESENTADO A:

Profesora CLAUDIA MEDINA, en la asignatura de:

PROGRAMACION NUMERICA.

CORPORACION UNIVERSITARIA DE LA COSTA

FACULTAD DE INGENIERIA

PROGRAMA DE INGENIERIA DE SISTEMAS

BARRANQUILLA

2010
SISTEMAS DE CONVERSION NUMERICA

DECIMAL A BINARIO

Se divide el número decimal entre 2 cuyo resultado entero se vuelve a dividir entre
2 y así sucesivamente. Una vez llegados al 1 indivisible se cuentan el último
cociente, es decir el uno final (todo número binario excepto el 0 empieza por uno),
seguido de los residuos de las divisiones subsiguientes. Del más reciente hasta el
primero que resultó. Este número será el binario que buscamos. A continuación se
puede ver un ejemplo con el número decimal 100 pasado a binario.

100 |_2
0 50 |_2
0 25 |_2 --> 100 1100100
1 12 |_2
0 6 |_2
0 3 |_2
1 1

BINARIO A DECIMAL

Para realizar la conversión de binario a decimal, realice lo siguiente:

1. Inicie por el lado derecho del número en binario, cada número multiplíquelo
por 2 y elévelo a la potencia consecutiva (comenzando por la potencia 0).
2. Después de realizar cada una de las multiplicaciones, sume todas y el
número resultante será el equivalente al sistema decimal.

Ejemplos:

 110101 (binario) = 53 (decimal). Proceso:

1*(2) elevado a (0)=1


0*(2) elevado a (1)=0
1*(2) elevado a (2)=4
0*(2) elevado a (3)=0
1*(2) elevado a (4)=16
1*(2) elevado a (5)=32
La suma es: 53

 110111 (binario) = 55 (decimal). Proceso:

1*(2) elevado a (0)=1


1*(2) elevado a (1)=2
1*(2) elevado a (2)=4
0*(2) elevado a (3)=0
1*(2) elevado a (4)=16
1*(2) elevado a (5)=32
La suma es: 55

CONVERSIÓN DE DECIMAL A HEXADECIMAL:

Se puede realizar empleando dos procesos: Divisiones sucesivas por 16, cuando
el número es entero, o multiplicaciones sucesivas por 16, cuando el número es
fraccionario. Siguiendo los mismos lineamientos empleados con los otros sistemas
numéricos.

Ejemplo 1: 65010

650 / 16 = 40 y resta 10 = A (dígito más próximo al punto hexadecimal)


40 / 16 = 2 y resta 8 (dígito a la izquierda del anterior)
No se puede continuar dividiendo, por lo que el 2 queda como símbolo más
significativo a la izquierda del anterior.

Resultado 65010 = 28A16

Ejemplo 2: 258810

2588 / 16 = 161 y resta 12 = C (dígito más próximo al punto hexadecimal)


161 / 16 = 10 y resta 1 (Dígito siguiente a la izquierda del obtenido arriba)
No se puede seguir dividiendo, por lo que el diez (la A) queda como símbolo más
significativo a la izquierda del obtenido arriba

Resultado 258810 = A1C16

CONVERSIÓN DE HEXADECIMAL A DECIMAL:

Los números hexadecimal son convertidos a su equivalente decimal multiplicando


el peso de cada posición por el equivalente decimal del dígito de cada posición y
sumando los productos.

Entonces:

12116 = 1 x 162 + 2 x 161 + 1 x 160


1 x 256 + 2 x 16 + 1 x 1
256 + 32 + 1= 289
28910

A1C16 A x 162 + 1 x 161 + C x 160


10 x 256 + 1 x 16 + 12 x 1
2560 + 16 + 12
258810

CONVERSIÓN DE HEXADECIMAL A BINARIO:

Para efectuar la conversión basta con colocar los cuatro bits correspondientes a
cada símbolo del número hexadecimal respetando su posición original. Para saber
el valor de cada símbolo sólo tiene que mirar la tabla de relación entre sistemas
mostrada arriba.

Por ejemplo: Para convertir 7A216

7 A 2
0111 1010 0010

Resultado: 7A216 = 0111101000102

Otro ejemplo: Para convertir 3D416

3 D 4
0011 1101 0100

Resultado: 3D4 = 0011110101002

CONVERSIÓN DE BINARIO A HEXADECIMAL:

Primeramente hay que agrupar los bits de a cuatro comenzando por la derecha y
siguiendo hacia la izquierda. Si bien en palabras cuya longitud sea múltiplo de
cuatro esto no tiene obligatoriedad, en aquellas cuyo tamaño no sea múltiplo de
cuatro si selecciona de izquierda a derecha los grupos de bits quedarán mal
conformados. Esto anterior para la parte entera. Para la parte fraccionaria el orden
es inverso, o sea que se agrupa de izquierda a derecha. Nótese que siempre es
del punto hacia afuera. Una vez formados los grupos basta con fijarse en la tabla
de arriba y reemplazar cada grupo por el símbolo Hexadecimal correspondiente.

Nada mejor que unos ejemplos:

Ejemplo 1: Convertir 1010110100102

1010 1101 0010


A D 2

Resultado: 1010110100102 = AD216

Ejemplo 2: Convertir 101110101102

101 1101 0110


5 D 6

Resultado: 101110101102 = 5D616


PSEUDOCODIGOS

1. DE BINARIO A DECIMAL

Inicio
Lea “Digite longitud del numero binario:”, N
Para I = 1, N, 1
Lea “Digite Binario:”, V[I]
F_p

I N
N 1

MQ (I >= 1)
Acum Acum+(V[I]*(2 ^ I - 1))
I I-1
N N+1
F_mq
Esc ”En Decimal es:”, Acum
Fin

2. DE DECIMAL A BINARIO

Inicio
Lea “Digite Numero Decimal:”, Dec
MQ (Dec >=2)
Coc (Dec/2)
Res Dec%2
V [I] Res
I I+1
Dec Coc
F_mq

V [I] Coc
K I
Esc “En Binario es:”

MQ (K >= 1)
Esc V[K]
K K-1
F_mq
Fin
3. DE DECIMAL A HEXADECIMAL

Inicio
Lea “Digite Numero Decimal”:, Dec
MQ (Dec > 0)

T Dec % 1
En caso de (T)
Caso 0: Residuo [I] ‘0’
Caso 1: Residuo [I] ‘1’
Caso 2: Residuo [I] ‘2’
Caso 3: Residuo [I] ‘3’
Caso 4: Residuo [I] ‘4’
Caso 5: Residuo [I] ‘5’
Caso 6: Residuo [I] ‘6’
Caso 7: Residuo [I] ‘7’
Caso 8: Residuo [I] ‘8’
Caso 9: Residuo [I] ‘9’
Caso 10: Residuo [I] ‘10’
Caso 11: Residuo [I] ‘11’
Caso 12: Residuo [I] ‘12’
Caso 13: Residuo [I] ‘13’
Caso 14: Residuo [I] ‘14’
Caso 15: Residuo [I] ‘15’
F_En_Caso_De
Dec Dec/16
I I+1
F_mq

Esc “En Hexadecimal es:”


Para I = 1, N, 1
Esc Residuo [I]
F_p
Fin
4. DE HEXADECIMAL A DECIMAL

Inicio
Lea “Digite Longitud del Numero Hexadecimal:”, N
Para I = 1, N, 1
Lea “Digite Hexadecimal:”, R2[I]
F_p

Para I = 1, N, 1
En Caso De (R2 [I])
Caso ‘0’: Residuo [I] 0
Caso ‘1’: Residuo [I] 1
Caso ‘2’: Residuo [I] 2
Caso ‘3’: Residuo [I] 3
Caso ‘4’: Residuo [I] 4
Caso ‘5’: Residuo [I] 5
Caso ‘6’: Residuo [I] 6
Caso ‘7’: Residuo [I] 7
Caso ‘8’: Residuo [I] 8
Caso ‘9’: Residuo [I] 9
Caso ‘A’: Residuo [I] 10
Caso ‘B’: Residuo [I] 11
Caso ‘C’: Residuo [I] 12
Caso ‘D’: Residuo [I] 13
Caso ‘E’: Residuo [I] 14
Caso ‘F’: Residuo [I] 15
F_En_Caso_De
F_p

Acum 0
I N

MQ (I >= 1)
Acum Acum + (R[I]*(16 ^ N - I))
I I–1
F_Mq

Esc “En Decimal Es:”, Acum


Fin
5. DE BINARIO A HEXADECIMAL

Inicio
Lea “Digite longitud del numero binario:”, N
Para I = 1, N, 1
Lea “Digite Binario:”, V [I]
F_p

Acum 0
I N

MQ (I >= 1)
Acum Acum + (R [I]*(2 ^ N - I))
I I–1
F_Mq

D Acum
I 1
Si ((D >= 1) y (D <= 15))
En Caso De (D)
Caso 1: Esc “En Hexadecimal Es:”, 1
Caso 2: Esc “En Hexadecimal Es:”, 2
Caso 3: Esc “En Hexadecimal Es:”, 3
Caso 4: Esc “En Hexadecimal Es:”, 4
Caso 5: Esc “En Hexadecimal Es:”, 5
Caso 6: Esc “En Hexadecimal Es:”, 6
Caso 7: Esc “En Hexadecimal Es:”, 7
Caso 8: Esc “En Hexadecimal Es:”, 8
Caso 9: Esc “En Hexadecimal Es:”, 9
Caso 10: Esc “En Hexadecimal Es:”, A
Caso 11: Esc “En Hexadecimal Es:”, B
Caso 12 Esc “En Hexadecimal Es:”, C
Caso 13: Esc “En Hexadecimal Es:”, D
Caso 14: Esc “En Hexadecimal Es:”, E
Caso 15: Esc “En Hexadecimal Es:”, F
Sino
MQ (D >= 16)
Coc (D/16)
Res D%16
V [I] Res
I I+1
D Coc
F_Mq
V [I] Coc
Esc “En Hexadecimal Es:”
Para J = I, 1, -1
En Caso De (V [J])
Caso 10: Esc “En Hexadecimal Es:”, A
Caso 11: Esc “En Hexadecimal Es:”, B
Caso 12 Esc “En Hexadecimal Es:”, C
Caso 13: Esc “En Hexadecimal Es:”, D
Caso 14: Esc “En Hexadecimal Es:”, E
Caso 15: Esc “En Hexadecimal Es:”, F
Default: Esc “En Hexadecimal Es:”, V [J]
F_En_Caso_De
F_p
F_Si
Fin

6. DE HEXADECIMAL A BINARIO

Inicio
Lea “Digite Longitud del Numero Hexadecimal:”, N
Para I = 1, N, 1
Lea “Digite Hexadecimal:”, R2 [I]
F_p

Para I = 1, N, 1
En Caso De (R2 [I])
Caso ‘0’: R [I] 0
Caso ‘1’: R [I] 1
Caso ‘2’: R [I] 2
Caso ‘3’: R [I] 3
Caso ‘4’: R [I] 4
Caso ‘5’: R [I] 5
Caso ‘6’: R [I] 6
Caso ‘7’: R [I] 7
Caso ‘8’: R [I] 8
Caso ‘9’: R [I] 9
Caso ‘A’: R [I] 10
Caso ‘B’: R [I] 11
Caso ‘C’: R [I] 12
Caso ‘D’: R [I] 13
Caso ‘E’: R [I] 14
Caso ‘F’: R [I] 15
F_En_Caso_De
F_p
Acum 0
I N

MQ (I >= 1)
Acum Acum + (R [I]*(16 ^ N - I))
I I–1
F_Mq

I 1
Acum2 Acum

MQ (Acum2 >= 0)
Residuo [I] Acum2%2
Acum2 Acum2/2
I I+1
F_Mq

Esc “En Binario Es:”


Para I = I, 1, -1
Esc Residuo [I]
F_p
Fin

You might also like