2.3. Sistema binario de numeración

-Conversión binario a decimal:
El teorema fundamental de la numeración se puede aplicar para saber el número decimal representado por un número escrito en binario. Así para el número binario 10011011011 la conversión se haría:
1·210 + 0·29+0·28+1·27 + 1·26 + 0·25+ 1·24 + 1·23+ 0·22 + 1·21+ 1·20 = 1243
Puesto que simplemente es sumar las potencias de los dígitos con el número 1, se puede convertir asignando un peso a cada cifra. De modo que la primera cifra (la que está más a la derecha) se corresponde con la potencia 20 o sea uno, la siguiente 21 o sea dos, la siguiente 22 que es cuatro y así sucesivamente; de esta forma, por ejemplo para el número 10100101, se haría:


-Conversión decimal a binario:
El método más utilizado es ir haciendo divisiones sucesivas entre dos. Consiste en dividir el número decimal continuamente entre 2 tomando los restos a la inversa y el último cociente. Por ejemplo para pasar el 179:


Ahora las cifras binarias se toman al revés. Con lo cual, el número 10110011 es el equivalente en binario de 179.
Otra posibilidad más rápida es mediante restas sucesivas. En este caso se colocan todas las potencias de dos hasta sobrepasar el número decimal. La primera potencia (el primer peso) que es menor a nuestro número será un 1 en el número binario. Se resta nuestro número menos esa potencia y se coge el resultado. Se ponen a 0 todas las potencias mayores que ese resultado y un 1 en la primera potencia menor. Se vuelve a restar y así sucesivamente. Ejemplo:
Número decimal: 179
1) Obtener potencias de 2 hasta sobrepasar el número:
                  1 2 4 8 16 32 64 128 256
2) Proceder a las restas (observar de abajo a arriba):


-Representación binaria de números negativos:
Si se representan números negativos, entonces se debe dedicar un bit para el signo del número. En el caso de usar un byte para el número, el primer bit es el signo y los otros siete el valor absoluto.
Así:
0 1 1 1 0 1 0 1 es el número 117
1 1 1 1 0 1 0 1 es el número -117
El rango representable con 1 bit sería del -127 al 127. Hay otra posibilidad y es la representación en complemento a uno. En esta representación, a los números negativos se les invierten todos los bits. Ejemplo:
1 0 0 0 1 0 1 0 es el número -117 en complemento a uno
El problema en ambos casos es que hay dos representaciones para el número cero (la 00000000 y la 10000000) y por ello es más popular el complemento a dos. Esta forma consiste en sumar uno al complemento a uno. De este modo se añade al rango el número -128 que se representa como 10000000. Ejemplo de complemento a dos:
1 0 0 0 1 0 1 1 es el número -117 en complemento a dos

-Operaciones con números binarios:
    -Suma:
La suma se efectúa igual que con los decimales, sólo que usando binarios según esta tabla:



    -Resta:
Funciona como la resta normal, los acarreos se ponen en el segundo número.



Otra posibilidad es pasar el sustraendo a complemento a dos o a complemento a uno y entonces efectuar la suma. Eso es lo que suelen hacer casi todos los procesadores.
    -Lógicas
Los bits se pueden manipular con operaciones lógicas. Fundamentalmente con AND y OR:


Otra operación es NOT que trabaja con un solo número al que le invierte las cifras:



    -Sistema octal:
Un caso especial de numeración es el sistema octal. En este sistema se utiliza base ocho, es decir cifras de 0 a 7. Así el número 8 en decimal, pasa a escribirse 10 en octal. Lo interesante de este sistema es que tiene una traducción directa y rápida al sistema binario, ya que una cifra octal se corresponde exactamente con tres cifras binarias (tres bits). La razón es que el número ocho es 23. De ahí que tres bits signifique una cifra octal. Los números del 0 al 7 en octal pasados a binario quedarían así:


De este modo el número binario 1100011, se agrupa de tres en tres (empezando por la derecha), es decir 1 100 011 y en octal quedaría: 143. Del mismo modo, el número octal 217 en binario es el 010 001 111

    -Sistema hexadecimal:
Se utiliza muchísimo en informática por razones parecidas al sistema octal. Es el sistema de numeración en base 16. Tiene la ventaja de que una cifra hexadecimal representa exactamente 4 bits (lo que comúnmente se conoce como un nibble). De este modo 2 cifras hexadecimales representan un byte (8 bits), que es la unidad básica para medir. Puesto que en nuestro sistema no disponemos de 16 cifras, sino solo de 10. Se utilizan letras para representar los números del 10 al 15.
Tabla:





Comments