jueves, 14 de octubre de 2010

NÚMEROS BINARIOS


Como mencionamos anteriormente, los sistemas digitales actuales sólo procesan dos señales (cierto o falso) y es por ello que se aplica el término de binario. Nosotros estamos acostumbrados a usar los números en base decimal (o base 10) pero ésta es sólo una de las formas de representar cantidades. En realidad "2" es sólo un símbolo y cuando lo vemos nosotros entendemos que existen dos unidades de algo. Si yo les digo que tengo 2 computadoras ustedes no visualizan el símbolo 2 sino la cantidad... quizá representada por una computadora al lado de la otra, pero no el símbolo. Así que "2" es sólo eso: un símbolo. Lo que trato de hacerles entender es que no importa cómo lo expresemos, qué símbolo o símbolos usemos, lo importante es que entendamos ese "lenguaje" y saber qué es lo que representa. Usamos los símbolos como una abstracción para representar cantidades.
Pongamos que tenemos un número decimal tal como 123. Eso representa una centena más dos decenas más tres unidades. O sea:
1 x 102 + 2 x 101 + 3 x 100
o sea, 123 ;-). Por lo tanto podríamos decir que si tenemos un número decimal de forma
a4a3a2a1a0
entonces a4, a3, a2, a1 y a0 son los coeficientes en la siguiente ecuación:
a4 x 104 + a3 x 103 + a2 x 102 + a1 x 101 + a0 x 100
donde todos los coeficientes deben ser un número entre 0 y 9. En este caso en particular estamos usando lo que conocemos: la base 10 o sistema decimal; pero podemos ampliar este concepto a cualquier base. Por lo tanto podemos decir que todo número puede ser expresado en un sistema de base "b" por:
an.bn + an-1.bn-1 + ... + a2.b2 + a1.b1 + a0.b0
y en el caso que contenga decimales:
an.bn + an-1.bn-1 + ... + a2.b2 + a1.b1 + a0.b0 + a-1.b-1 + a-2.b-2 + ... + a-m.b-m
donde an es un valor que siempre estará entre 0 y (b-1) siendo “n” el número de dígitos enteros menos uno y “m” el número de dígitos en la fracción decimal. En un número binario la base es 2. Por lo tanto, un número binario sólo puede contener dígitos entre 0 y 1 (que en nuestro caso representarán los dos estados que asociamos con falso o cierto). A un solo dígito binario (elemento mínimo de un número binario) se le conoce como BIT. A la agrupación de 8 BITS se le conoce como BYTE.
Un ejemplo de un número binario es: 1010011. Si quisiéramos representar este número de 7 bits (donde b=2, n=6 y m =0) de una forma que nos fuese más familiar, es decir, en decimal, haríamos:
1 x 26 + 0 x 25 + 1 x 24 + 0 x 23 + 0 x 22 + 1 x 21 + 1 x 20 = 64 + 0 + 16 + 0 + 0 + 2 + 1 = 83
por lo tanto, el número binario de 7 bits 1010011 es igual que el número decimal 83. Son dos formas distintas de expresar la misma cantidad. Y que lo haya convertido a decimal no quiere decir que la fórmula convierte el número a base decimal. En realidad Yo usé la base decimal para resolver porque es la forma natural en la que nosotros pensamos. Vi 26, y yo sé que representa una cantidad de sesenta y cuatro y la forma en la que Yo sé escribir esa cantidad es en decimal y representada por los símbolos 64. Si yo pensase en otra base, como veremos más adelante, vería otros símbolos pero al final representarían la misma cantidad.
Cuando trabajamos con números en distintas bases la forma de expresar en qué base está escrito un número es colocándole dentro de paréntesis e indicando al lado la base. Por ejemplo:
(1010011)2 = (83)10
quiere decir que el número 1010011 en base 2 es igual al número 83 en base 10.
Por supuesto los números binarios, o en base 2, son sólo un ejemplo. La base puede ser cualquiera. Supongamos ahora que les digo que tenemos: (1234,2)5 que es un número en base 5 con fracción decimal y que, como se observa, sólo usa dígitos del 0 al 4 que, como ya se ha mencionado, son las únicas posibilidades. Bien, luego les digo que lo conviertan a base 10. Sabiendo que en ese caso n=3, que m=1 y que la base b=5, entonces gracias a la fórmula que ya mostramos podremos decir que:
(1234,2)5 = 1 x 53 + 2 x 52 + 3 x 51 + 4 x 50 + 2 x 5-1 = 125 + 50 + 15 + 4 + 0,4 = (194,4)10
Perfecto. Por lo tanto ya sabemos entonces qué debemos hacer para convertir números que están en cualquier base “b” a, en nuestro caso, base 10.
Si el número que queremos mostrar está en una base menor o igual a diez pues podremos usar los dígitos conocidos por nosotros (del 0 al 9) como los "símbolos" a usar. Pero ¿qué pasa si el número está en una base mayor a 10? pues que deberemos usar otros símbolos. Lo normalmente usado son las letras del alfabeto (regularmente en mayúsculas) para expresar dichos números. Por ejemplo el sistema en base hexadecimal (ámpliamente usado) que está en base 16 usa los símbolos A, B, C, D, E y F para expresar las cantidades que conocemos en decimal como 10, 11, 12, 13, 14 y 15 respectivamente (los cuales son necesarios en la base 16 ya que recuerden que los coeficientes en cualquier base son números entre 0 y base-1). Por lo tanto:
(1F)16 = 1 x 161 + 15 x 160 = 16 + 15 = (31)10
y, más interesante aún:
(10)16 = 1 x 161 + 0 x 160 = 16 + 0 = (16)10
y es por eso comentaba que no importan los símbolos usados, lo importante es saber la cantidad que representan y para ello es necesario saber el "lenguaje" que se está hablando. Si yo escribo los símbolos 10... que ven ustedes? Pues lo que ven dependerá de su sistema base. Ustedes pueden decir que entienden una cantidad de diez. Yo digo que entiendo una cantidad de dieciséis. Si ustedes están trabajando en base 10 y yo en base 16, ambas cantidades son correctas.
Hace unos momentos cuando estábamos en el punto de convertir números según la formula dije: "Si yo pensase en otra base" . Que pasa si probamos el mismo ejemplo, pero esta vez “pensando” en hexadecimal. Tendríamos:
(1010011)2 = 1 x 26 + 0 x 25 + 1 x 24 + 0 x 23 + 0 x 22 + 1 x 21 + 1 x 20 = (40)16 + 0 + (10)16 + 0 + 0 + (2 + 1)16 = (53)16
Ahora, cuando yo vi 26 vi la cantidad o el valor de sesenta y cuatro que es representada en hexadecimal por los símbolos 40, 24por 10, etc.

No hay comentarios:

Publicar un comentario