¡Esta es una revisión vieja del documento!
Signo Magnitud SM
Como vimos cuando trabajamos con la resta de binarios, para decir que un numero binario es negativo alcanza con colocar un signo -, pero nuestro objetivo es llegar a representar todos los los números como lo hace una computadora, entonces no podemos representar un signo.
Surge la necesidad de incluir dentro de la representación del numero su condición de negativo. Para lograr esto vamos a trabajar el numero en binario como 2 partes, una parte representa el signo y otra el valor o magnitud. El dígito mas significativo sera el encargado de representar el signo con la siguiente convención.
Si el numero es positivo se coloca ##0##, si el numero es negativo se coloca ##1##
De esta forma se representa el ##-40## y el ##+40## como se ve el bit mas significativo representa el signo y solo los 7 bits restantes representan el valor o magnitud
Como se ve si tenemos 8 posiciones solo se utilizan 7 para el valor. El numero mas alto que se puede representar en n lugares o bits es 2n-1. Para entenderlo veamos que ocurre con un n pequeño. Si n fuera 4, entonces tenemos posición 0,1,2,3. El numero mas grande es 11112 que es un 1510, ahora bien 24 es 16, y eso en binario seria 100002 o sea se enciende esa posición cuando llegue al máximo de las anteriores, o sea conté hasta donde pude y cuando llego al máximo es el numero siguiente pero en la siguiente posición, es decir que el numero mas grande en 4 posiciones, seria 24 -1 que es 15. Generalizando llegamos que para n lugares el numero mas grande es 2n -1
Entonces volviendo a nuestra representación SM si tenemos 8 lugares pero solo podemos usar 7 para el valor tendríamos 28-1-1 para el valor más grande y teniendo la posibilidad de indicar positivo y negativo nos da un rango de representación - 28-1-1 a + 28-1-1.
Nuevamente generalizando, dadas n posiciones tenemos el siguiente rango de representación
- (2n-1-1) ….. + (2n-1-1)
El hecho de que el dígito mas significativo lo estemos usando para el signo nos pone ante la siguiente situación.
- ##000000000##
- ##100000000##
Lo que vemos es un +0 y un -0, esto quiere decir que hay dos representaciones para el 0, lo que implica un problema para una computadora, ademas el cero es positivo, no hay un cero negativo. Esta ambigüedad es resuelta aplicando otros métodos de representación.
(2090)
you see this when javscript or css is not working correct