Download SISTEMA BINARIO
Document related concepts
Transcript
SISTEMA BINARIO Internamente, la máquina computadora representa los valores numéricos mediante grupos de bits. agrupados en bytes. Por ejemplo, el número 3 se representa mediante un byte que tiene "activos" los bits primero y segundo (contando desde la derecha); 00000011. Esta sería la forma de representación del número 3 en un sistema numérico de base 2, también conocido como BINARIO. El sistema que utilizamos normalmente es un sistema DECIMAL o de base 10. En un sistema DECIMAL, contamos desde el 0 hasta el 9 antes de añadir un nuevo dígito. El número 22 en un sistema decimal significa que tenemos dos conjuntos de 10s y 2 conjuntos de 1s. En un sistema BINARIO sólo pueden haber dos valores para cada dígito: ya sea un 0=DESACTIVADO ó un 1=ACTIVADO. Para representar el número 22 en notación BINARIA lo haríamos como 00010110, notación que se explica según la siguiente tabla: Posición del BIT: 7 6 5 4 3 2 1 0 Valor Binario: 0 0 0 1 0 1 1 0 Valor Decimal: 128 64 32 16 8 4 2 1 Valores a Sumar: 0 0 0 16 0 4 2 0 Valor Resultante: 16 + 4 + 2=22 Todos los valores que corresponden a posiciones a las que se asigna el valor binario de 0 (cero) no se cuentan, ya que 0 representa DESACTIVADO. De la misma manera, los números que corresponden a las posiciones con valor binario 1 se sumarán, (16 + 4 + 2=22) ya que 1 representa ACTIVADO. Valores Decimales y sus equivalentes Binarios: POSICIÓN VALOR VALOR BIT DECIMAL BINARIO 1 1 1 2 2 10 3 3 11 4 4 100 5 5 101 6 6 110 7 7 111 8 8 1000 9 9 1001 10 10 1010 11 16 10000 12 32 100000 13 64 1000000 14 100 1100100 15 256 100000000 16 512 1000000000 17 1000 1111110100 18 1024 10000000000 SUMA DE NÚMEROS BINARIOS Tabla de sumar de números binarios Suma consecutiva de números binarios de 1 en 1 hasta completar 10 Suma de dos números binarios Sean los números binarios 00102 y 01102 Primer paso De la misma forma que hacemos cuando sumamos números del sistema decimal, esta operación matemática la comenzamos a realizar de derecha a izquierda, comenzando por los últimos dígitos de ambos sumandos, como en el siguiente ejemplo: En la tabla de suma de números binarios podemos comprobar que 0 + 0 = 0 Segundo paso Se suman los siguientes dígitos 1 + 1 = 10 (según la tabla), se escribe el “0” y se acarrea o lleva un “1”. Por tanto, el “0” correspondiente a tercera posición de izquierda a derecha del primer sumando, adquiere ahora el valor “1”. Tercer paso Al haber tomado el “0” de la tercera posición el valor “1”, tendremos que sumar 1 + 1 = 10. De nuevo acarreamos o llevamos un “1”, que tendremos que pasar a la cuarta posición del sumando. Cuarto paso El valor “1” que toma el dígito “0” de la cuarta posición lo sumamos al dígito “0” del sumando de abajo. De acuerdo con la tabla tenemos que 1+ 0 = 1. El resultado final de la suma de los dos números binarios será: 1 0 0 0. Sistema Numérico Octal o Base 8 El sistema de numeración octal es también muy usado en la computación por tener una base que es potencia exacta de 2 o de la numeración binaria. Esta característica hace que la conversión a binario o viceversa sea bastante simple. El sistema octal usa 8 dígitos (0,1,2,3,4,5,6,7) y tienen el mismo valor que en el sistema de numeración decimal. Como el sistema de numeración octal usa la notación posicional entonces para el número 3452.32q tenemos: 2*(80) + 5*(81) + 4*(82) + 3*(83) + 3*(8-1) + 2*(8-2) = 2 + 40 + 4*64 + 64 + 3*512 + 3*0.125 + 2*0.015625 = 2 + 40 + 256 + 1536 + 0.375 + 0.03125 = 1834 + 40625dentonces, 3452.32q = 1834.40625d Los números octales pueden construirse a partir de números binarios agrupando cada tres dígitos consecutivos de estos últimos (de derecha a izquierda) y obteniendo su valor decimal. Por ejemplo, el número binario para 74 (en decimal) es 1001010 (en binario), lo agruparíamos como 1 001 010. De modo que 74 en octal es 112 Sistema hexadecimal El sistema hexadecimal (no confundir con sistema sexagesimal), a veces abreviado como hex, es el sistema de numeración posicional de base 16 — empleando por tanto 16 símbolos—. Su uso actual está muy vinculado a la informática y ciencias de la computación, pues los computadores suelen utilizar el byte u octeto como unidad básica de memoria; y, debido a que un byte representa 28 valores posibles, y esto puede representarse como , que, según el teorema general de la numeración posicional, equivale al número en base 16 10016, dos dígitos hexadecimales corresponden exactamente — permiten representar la misma línea de enteros— a un byte. En principio dado que el sistema usual de numeración es de base decimal y, por ello, sólo se dispone de diez dígitos, se adoptó la convención de usar las seis primeras letras del alfabeto latino para suplir los dígitos que nos faltan. El conjunto de símbolos sería, por tanto, el siguiente: S = {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F} Se debe notar que A = 10, B = 11, C = 12, D = 13, E = 14 y F = 15. En ocasiones se emplean letras minúsculas en lugar de mayúsculas. Como en cualquier sistema de numeración posicional, el valor numérico de cada dígito es alterado dependiendo de su posición en la cadena de dígitos, quedando multiplicado por una cierta potencia de la base del sistema, que en este caso es 16. Por ejemplo: 3E0A16 = 3×163 + E×162 + 0×161 + A×160 = 3×4096 + 14×256 + 0×16 + 10×1 = 15882. Suma 9 + 7 = 16 (16 – 16 = 0 y nos llevamos 1) En este caso la respuesta obtenida, 16, no está entre el 0 y el 15, por lo que tenemos que restarle 16. Por lo tanto, la respuesta obtenida será 10 (sistema hexadecimal). Hay que tener cuidado de utilizar correctamente las letras, ya que operar a la vez con letras y números puede crear confusiones. A + 6 = 16 (16 - 16 = 0 y nos llevamos 1) Ocurre lo mismo que en el ejemplo anterior. A + A = 20 ( 20 – 16 = 4 y nos llevamos 1) La respuesta es 20 y no está entre el 0 y el 15, por lo que tenemos que restarle 16. Por lo tanto, la respuesta obtenida será 14 (sistema hexadecimal). Hay que tener cuidado de utilizar correctamente las letras, ya que operar a la vez con letras y números puede crear confusiones. F + E = 29 ( 29 – 16 = D y nos llevamos 1) La respuesta es 29 y no está entre el 0 y el 15, por lo que tenemos que restarle 16. Por lo tanto, la respuesta obtenida será 1D (sistema hexadecimal). Hay que tener cuidado de utilizar correctamente las letras, ya que operar a la vez con letras y números puede crear confusiones. Ahora haremos una operación más complicada: A + 2 = 12 (12 corresponde a C) Ten en cuenta que puedes comprobar los resultados utilizando una calculadora científica. [editar] Resta hexadecimal [editar] Complemento C15 Podemos hacer la resta de dos números hexadecimales utilizando el complemento a 15. Para ello tendremos que sumar al minuendo el complemento a quince del sustraendo, y finalmente sumarle el bit de overflow (bit que se desborda). Para entender la resta en complemento a 15 lo analizaremos con un ejemplo. Ésta es la resta que tenemos que resolver: A4FC9 - DE8 ————————— ¿?¿?¿?¿? Primero tenemos que hacer que el minuendo y el sustraendo tengan la misma cantidad de números. Para ello, añadiremos ceros al sustraendo hasta que sean suficientes. A4FC9 - 00DE8 ————————— ¿?¿?¿?¿? Después, crearemos un nuevo número con la misma cantidad de números que el nuevo sustraendo. Como en el sistema hexadecimal el mayor número que tenemos es el 15, que corresponde a la letra F, tendremos que escribir la F tantas veces como números tiene el sustraendo. FFFFF - 00DE8 ————————— FF217 La resta se hace siguiendo las normas generales de la resta común. La diferencia obtenida se denomina el complemento a 15. Recuerda el valor correspondiente a cada letra al operar. Ahora tendremos que sumar el minuendo y el complemento a 15 utilizando la suma en sistema hexadecimal, mencionada anteriormente. A4FC9 + FF217 ————————— 1A41E0 Con la suma obtenemos el resultado 1A41E0, pero no es la respuesta final. Te habrás dado cuenta que este nuevo número tiene más cifras que los números iniciales que teníamos que restar. Tenemos que quitar el número de la izquierda (en este caso, el 1) y sumarlo. A41E0 + 1 ————————— la respuesta es A41E1 A41E1