Hoy les voy a hablar sobre un tema muy interesante acerca de sistemas numéricos utilizados en la computación, se trata de la normalización de los números flotantes, sistema que se usa muy a menudo en la programación.
Normalización
Este método hace a la mantisa de los números en punto flotante más precisa con el número real al cual se quiere representar.
Un ejemplo de esto seria tener un número binario x.
x = 11010*2**0
Entonces lo que necesitamos es la mantisa de ese número, para eso rellenamos con ceros lo que le falta al número para tener un total de 8 bits:
mantisa = 00011010
Ahora para hacer la normalización de ese número se necesita desplazar la cantidad de veces que contiene ceros a la izquierda y agregándolos a la derecha:
normalizado = 11010000
Ahora los desplazamientos que se hicieron afectan el exponente de la base, por lo que ahora la base es esta 2**3.
El número resultante multiplicado por esa base es diferente por lo tanto se deben restar ese exponente para equilibrar la base y tener el número resultante correcto:
Nueva Base = 2**-3
El número completo normalizado es = 1101000*2**-3
Características de los números normalizados
-Todos los números normalizados tienen como bit más significativo el 1
-Al tener está característica se obvia ese bit y solo se representa el número después de la coma.
Desventajas
-Este sistema al ofrecer una representación más precisa obtiene resultados más exactos pero cuando se usa en sistemas de computación esto implica una mayor exigencia de procesamiento al sistema done se está realizando el cálculo.
-También necesita mucho más espacio de memoria que otros sistemas numéricos.
-En ocasiones ocurre que puede tener errores a la hora de redondear algún número.
-Existe la posibilidad de hacer overflow de la memoria al utilizar este sistema de representación numérica.
Espero está información les haya sido de ayuda.
Hasta la próxima.
Normalización
Este método hace a la mantisa de los números en punto flotante más precisa con el número real al cual se quiere representar.
Un ejemplo de esto seria tener un número binario x.
x = 11010*2**0
Entonces lo que necesitamos es la mantisa de ese número, para eso rellenamos con ceros lo que le falta al número para tener un total de 8 bits:
mantisa = 00011010
Ahora para hacer la normalización de ese número se necesita desplazar la cantidad de veces que contiene ceros a la izquierda y agregándolos a la derecha:
normalizado = 11010000
Ahora los desplazamientos que se hicieron afectan el exponente de la base, por lo que ahora la base es esta 2**3.
El número resultante multiplicado por esa base es diferente por lo tanto se deben restar ese exponente para equilibrar la base y tener el número resultante correcto:
Nueva Base = 2**-3
El número completo normalizado es = 1101000*2**-3
Características de los números normalizados
-Todos los números normalizados tienen como bit más significativo el 1
-Al tener está característica se obvia ese bit y solo se representa el número después de la coma.
Desventajas
-Este sistema al ofrecer una representación más precisa obtiene resultados más exactos pero cuando se usa en sistemas de computación esto implica una mayor exigencia de procesamiento al sistema done se está realizando el cálculo.
-También necesita mucho más espacio de memoria que otros sistemas numéricos.
-En ocasiones ocurre que puede tener errores a la hora de redondear algún número.
-Existe la posibilidad de hacer overflow de la memoria al utilizar este sistema de representación numérica.
Espero está información les haya sido de ayuda.
Hasta la próxima.
Comentarios
Publicar un comentario