Métodos para representar números

enteros Los ordenadores tienen la necesidad de almacenar números y, al traba- jar en binario, deben usar algún método para representar los números enteros, los positivos y los negativos. En la actualidad, existen diferentes técnicas: • Signo y magnitud: el bit que se encuentra más a la izquierda re- presenta el signo. Si su valor es 0, entonces el número es positivo, mientras que, si su valor es 1, entonces el número es negativo. El resto de bits representa el módulo del número. Ejemplo: representar el 12 y -12 en una palabra de 8 bits en signo y módulo: 12 0 0001100 -12 1 0001100 Una de las desventajas de este método es la doble representación del 0(10). Tendríamos el conjunto 1000000(2) (-0(10)) y el conjunto 00000000(2) (+0(10). • Complemento a 1: se realiza una diferenciación entre los números positivos y los números negativos. En los números positivos, el bit que se encuentra más a la izquierda representa el signo y el resto de los bits corresponden al módulo del número. No obstante, en los números negativos se parte del número positivo, pero después se debe cambiar cada uno de los dígitos. De esta forma, todos los ceros pasan a ser unos y viceversa. Ejemplo: representar 12 y -12 en una palabra de 8 bits en comple- mento a1: 12 0 0001100 -12 1 1110011 La desventaja es la misma que en la técnica de signo y magnitud, es decir, tendríamos doble representación del 0(10). Tendríamos el conjunto 00000000(2) (+0(10)) y 11111111(2) (-0(10). • Complemento a 2: al igual que en el complemento a 1, se realiza una diferenciación entre los números positivos y los números ne- gativos. En los números positivos, el bit que se encuentra más a la izquierda representa el signo y el resto de los bits corresponden al módulo del número. No obstante, en los números negativos, primero se debe realizar la transformación al complemento a 1 y, Tema 2. Codificación de la información en diferentes sistemas de representación 42 después, sumar 1 a dicho resultado. Si el ultimo dígito de la suma tiene acarreo, se desprecia. Ejemplo: representar 12 y -12 en una palabra de 8 bits en comple- mento a2: Positivo: 12 0 0001100 Negativo 1 1110011 Primer paso + 1 Segundo paso -12 1 1110100 En esta técnica ya no se puede representar 0(10) de formas diferen- tes. Su única representación será 00000000(2). Ejemplo: representar 0 y -0 en una palabra de 8 bits en comple- mento a2: Positivo: 0 0 0000000 Negativo 1 1111111 Primer paso + 1 Segundo paso -0 1|0 0000000 Se descarta el acarreo (el 1). • Exceso a 2n-1: si se usa este método, no habrá ningún bit para el signo, sino que todos los bits que componen el número tendrán peso en el valor total del mismo. Consiste en representar el cero como un valor intermedio, que para n bits está representado por 2n-1, y colocar los números negativos antes de ese valor y los positivos después de él. De aquí proviene el nombre. Ej.: representar 12 y -12 en una palabra de 8 bits en exceso a 2n-1: Para 8 bits el exceso es 28-1 = 27 = 128. Por tanto, para representar los números pedidos tendremos que sumarle esa cantidad: 12 → 12 + 128 = 14010001100 -12 → -12 + 128 = 116 01110100 El mayor inconveniente de esta técnica es su complejidad respec- to a las otras, puesto que requiere operaciones intermedias. En la actualidad, los ordenadores utilizan la técnica del complemento a 2 para representar los números enteros. Sistemas operativos monopuesto 43 GESTIÓN DE LOS RECURSOS Y DE LA MEMORIA 3 Sistemas operativos monopuesto 45