Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Conversion en Programacion
Conversion en Programacion
hexadecimal
Binario a decimal
Para realizar la conversin de binario a decimal, realice lo siguiente:
1.
2.
Inicie por el lado derecho del nmero en binario, cada nmero multiplquelo por 2 y elvelo a la potencia consecutiva
(comenzando por la potencia 0).
Despus de realizar cada una de las multiplicaciones, sume todas y el nmero resultante ser el equivalente al sistema
decimal.
Ejemplos:
Tambin se puede optar por utilizar los valores que presenta cada posicin del nmero binario a ser transformado, comenzando de
derecha a izquierda, y sumando los valores de las posiciones que tienen un 1.
Por ejemplo: el nmero binario 1010010 corresponde en decimal al 82 se puede representar de la siguiente manera:
64 32 16 8 4 2 1
1 0 1 0 0 1 0
entonces se suma los nmeros 2, 16 y 64:
2
+16
64
---82
Decimal a binario
Se divide el nmero 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 nmero binario excepto el 0 empieza por uno),
seguido de los residuos de las divisiones subsiguientes. Del ms reciente hasta el primero que result. Este nmero ser el
binario que buscamos. A continuacin se puede ver un ejemplo con el nmero decimal 100 pasado a binario.
100 |_2
0 50 |_2
0 25 |_2
--> 100
1 12 |_2
0 6 |_2
0 3 |_2
1 1
1100100
Otra forma de conversin consiste en un mtodo parecido a la factorizacin en nmeros primos. Es relativamente fcil dividir cualquier
nmero entre 2. Este mtodo consiste tambin en divisiones sucesivas. Dependiendo de si el nmero es par o impar, colocaremos un
cero o un uno en la columna de la derecha. Si es impar, le restaremos uno y seguiremos dividiendo por dos, hasta llegar a 1. Despus
slo nos queda tomar el ltimo resultado de la columna izquierda (que siempre ser 1) y todos los de la columna de la derecha y
ordenar los dgitos de abajo a arriba. Y luego se hara un cuadro con las potencias con el resultado.
Ejemplo:
100|0
50|0
25|1 --> 1, 25-1=24 y seguimos dividiendo por 2
12|0
6|0
3|1
1|1 --> 100
1100100
Existe un ltimo mtodo denominado de distribucin. Consiste en distribuir los unos necesarios entre las potencias sucesivas de 2 de
modo que su suma resulte ser el nmero decimal a convertir. Sea por ejemplo el nmero 151, para el que se necesitarn las 8
primeras potencias de 2, ya que la siguiente, 28=256, es superior al nmero a convertir. Se comienza poniendo un 1 en 128, por lo que
an faltarn 23, 151-128=23, para llegar al 151. Este valor se conseguir distribuyendo unos entre las potencias cuya suma den el
resultado buscado y poniendo ceros en el resto. En el ejemplo resultan ser las potencias 4, 2, 1 y 0, esto es, 16, 4, 2 y 1,
respectivamente.
Ejemplo:
20= 1|1
21= 2|1
22= 4|1
23= 8|0
24= 16|1
25= 32|0
26= 64|0
27= 128|1
128+16+4+2+1=151
10010111
Binario a octal
Para realizar la conversin de binario a octal, realice lo siguiente:
1) Agrupe la cantidad binaria en grupos de 3 en 3 iniciando por el lado derecho. Si al terminar de agrupar no completa 3 dgitos,
entonces agregue ceros a la izquierda.
2) Posteriormente vea el valor que corresponde de acuerdo a la tabla:
Nmero en binario
000
001
010
011
100
101
110
111
Nmero en octal
111 = 7
110 = 6
Agrupe de izquierda a derecha: 67
11001111 (binario) = 317 (octal). Proceso:
111 = 7
001 = 1
11 entonces agregue un cero, con lo que se obtiene 011 = 3
Agrupe de izquierda a derecha: 317
1000011 (binario) = 103 (octal). Proceso:
011 = 3
000 = 0
1 entonces agregue 001 = 1
Agrupe de izquierda a derecha: 103
Octal a binario
Cada dgito octal se lo convierte en su binario equivalente de 3 bits y se juntan en el mismo orden. Ejemplo:
247 (octal) = 010100111 (binario). El 2 en binario es 10, pero en binario de 3 bits es Oc(2) = B(010); el Oc(4) = B(100) y el
Oc(7) = (111), luego el nmero en binario ser 010100111.
Binario a hexadecimal
Nmero
en binario
000
0
000
1
001
0
001
1
010
0
010
1
011
0
011
1
100
0
100
1
101
0
101
1
110
0
110
1
111
0
1111
Nmero en
hexadecim
al
1010 = A
1011 = B
1 entonces agregue 0001 = 1
Agrupe de izquierda a derecha: 1BA
0101 = 5
1111 = F
110 entonces agregue 0110 = 6
Agrupe de izquierda a derercha: 6F5
Hexadecimal a binario
dem que para pasar de hexadecimal a binario, solo que se remplaza por el equivalente de 4 bits, como de octal a binario.
Conversin decimal octal: Consiste en dividir un numero y sus sucesivos cocientes obtenidos por ocho hasta llegar a
una divisin cuyo cociente sea 0. El numero Octal buscado es el compuesto por todos los restos obtenidos escritos en orden inverso a
su obtencin. Ej.:
1992
39
249 8
72
09
31 8
1000(10)=3710(8)
Conversin de una fraccin decimal a una octal: Se toma la fraccin decimal y se multiplica por 8,
obteniendo en la parte entera del resultado el primer dgito de la fraccin octal resultante y se repite el proceso con la parte
decimal del resultado para obtener el segundo dgito y sucesivos. El proceso termina cuando desaparece la parte fraccionaria del
resultado o dicha parte fraccionaria es inferior al error mximo que deseamos obtener. Ej. :
0.140625*8=1.125
0.140625(10)=0.11(8)
0.125*8=1.0
Conversin octal a decimal: Existen varios mtodos siendo el ms generalizado el indicado por el TFN (Teorema
fundamental de la numeracin) que hace la conversin de forma directa por medio de la formula. Ej. : utilizando el teorema
fundamental de la numeracin tenemos que 4701 es igual a:
1000
16
40
62 16
14 3
Conversin de una fraccin decimal a hexadecimal : a la fraccin decimal se multiplica por 16,
obteniendo en la parte entera del resultado el primer dgito de la fraccin hexadecimal buscada, y se repite el proceso con la parte
fraccionaria de este resultado. El proceso se acaba cuando la parte fraccionaria desaparece o hemos obtenido un nmero de
dgitos que nos permita no sobrepasar el mximo error que deseemos obtener. Ej.: Pasar a hexadecimal la fraccin decimal
0.06640625
0.06640625*16=1.0625
0.0625*16 = 1.0 Luego 0.06640625(10)=0.11(16)
TFN que nos da el resultado por la aplicacin directa de la formula. Ej. : utilizando el teorema fundamental de la numeracin
tenemos que 2CA es igual a:
Conversin de hexadecimal-binario: para convertir un numero hexadecimal a binario, se sustituye cada dgito
hexadecimal por su representacin binaria segn la siguiente tabla.
Ej.: pasar el nmero 2BC a binario
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
Exceso 3
Gray o Reflejado
0011
0000
0100
0001
0101
0011
0110
0010
0111
0110
1000
0111
1001
0101
1010
0100
1011
1100
1100
1101
100110101
+ 11010101
1000001010
0+0=0
0+1=1
1+0=1
1 + 1 = 10
Operamos como en el sistema decimal: comenzamos a sumar desde la derecha, en nuestro ejemplo, 1 + 1 = 10,
entonces escribimos 0 en la fila del resultado y llevamos 1 (este "1" se llama acarreo o arrastre). A
continuacin se suma el acarreo a la siguiente columna: 1 + 0 + 0 = 1, y seguimos hasta terminar todas la
columnas (exactamente como en decimal).
0-0=0
1-0=1
1-1=0
0 - 1 = no cabe o se pide prestado al prximo.
La resta 0 - 1 se resuelve, igual que en el sistema decimal, tomando una unidad prestada de la posicin
siguiente: 10 - 1 = 1 y me llevo 1, lo que equivale a decir en decimal, 2 - 1 = 1. Esa unidad prestada debe
devolverse, sumndola, a la posicin siguiente. Veamos algunos ejemplos:
Restamos 17 - 10 = 7 (2=345)
10001
-01010
00111
00101110
A pesar de lo sencillo que es el procedimiento, es fcil confundirse. Tenemos interiorizado el sistema decimal y
hemos aprendido a restar mecnicamente, sin detenernos a pensar en el significado del arrastre. Para simplificar
las restas y reducir la posibilidad de cometer errores hay varias soluciones:
Dividir los nmeros largos en grupos. En el siguiente ejemplo, vemos cmo se divide una resta larga en
tres restas cortas:
100110011101
-010101110010
010000101011
1001
-0101
0100
1001
-0111
0010
1101
-0010
1011
Utilizando el complemento a dos. La resta de dos nmeros binarios puede obtenerse sumando al
minuendo el complemento a dos del sustraendo. Veamos algunos ejemplos. Hagamos la siguiente resta,
91 - 46 = 45, en binario:
1011011
-0101110
0101101
C2 de 46 = 1010010
1011011
+1010010
10101101
En el resultado nos sobra un bit, que se desborda por la izquierda. Pero, como el nmero resultante no puede ser
ms largo que el minuendo, el bit sobrante se desprecia.
Un ltimo ejemplo: vamos a restar 219 - 23 = 196, directamente y utilizando el complemento a dos:
11011011
-00010111
11000100
C2 de 23 = 11101001
11011011
+11101001
111000100
Y, despreciando el bit que se desborda por la izquierda, llegamos al resultado correcto: 11000100 en binario,
196 en decimal.
Utilizando el complemento a 1. La resta de dos nmeros binarios puede obtenerse sumando al minuendo
el complemento a uno del sustraendo y a su vez sumarle el bit de overflow (bit que se desborda).
10110
00000
00000
10110
11000110
En sistemas electrnicos, donde se suelen utilizar nmeros mayores, no se utiliza este mtodo sino otro llamado
algoritmo de Booth.
- 0000
010101
10001
- 1101
01000
- 0000
10000
- 1101
00111
- 0000
01110
- 1101
00001