Repaso de la clase pasada.
Vimos que la matisa puede ser entera o fraccionaria. Si queremos usar una mantisa fraccionaria de 4 bits con 1 bit implicito, donde 3 de sus bits son fraccionarios entonces la expresamos como:
SM(4+1,3)
Por ejemplo, usando el ejemplo anterior la cadena 0100 corresponde al número 2,5 ya que agregando el bit implícito nos quedaría la cadena 10100 y los últimos 3 bits son los fraccionarios.
IEEE 754
IEEE 754 es el estándar que fue creado para representar puntos flotantes. Define 2 maneras de representar un número:
Precisón simple y Presición doble.
Presición simple (32 bits): Signo – exponente – mantisa
S(1) – Exc(8,127) – SM(23+1, 23)
Presición doble (64 bits): Signo – exponente – mantisa
S(1) – Exc(11,1023) – SM(52+1,52)
Estas representaciones siguen determinadas reglas según la composición de sus partes:
Clases de números en IEEE 754
1) Normalizados:
– exponente puede ser cualquier valor menos 00..00 y 11..11
– mantisa es fraccionaria con bit implícito entero(o sea, 2^0)
Ejemplo en presición simple:
0080000F = 2^-126
Ya que 0080000F = 0000 0000 1000 0000 0000 0000 0000 1111
En negrita se ve resaltado el exponente.
Pasamos a analizar el signo (el primer bit) -> 0 -> positivo
Interpretamos mantisa (agregamos al bit implícito entero al comienzo)-> I(1000 0000 0000 0000 0000 1111) = 2^0 + 2^-20 + 2^-21 + 2^-22 + 2^-23
Interpretamos exponente -> I[Exc(8,127)](00000001) = -126
2) Cero
Representa al valor 0
– exponente debe ser 00..00
– mantisa debe ser 00..00
Casos posibles: 00000000 y 80000000
3) Infinitos
Representa al valor infinito (al positivo y al negativo)
– exponente debe ser 11..11
– mantisa debe ser 00..00
Casos posibles: 7FB00000 y FFB00000
4) NaN (Not a number)
Representa valores que no se pueden representar. Comúnmente se utiliza para expresar errores.
– exponente debe ser 11..11
– mantisa debe 00..00
Ejemplo: 7FB00001
5) Desnormalizados
Representa valores en el rango (-1,1) excluyendo al 0.
– exponente debe ser 00..00 y vale 126
– mantisa debe diferente de 00..00, y es fraccionaria con bit implícito igual a 0
Ejemplo: 0000000F
Práctica
Finalmente hicimos práctica con ejercicios de rango, resolución mínima y máxima. A prácticar este tema! Recuerden que la resolución mínima es la mínima distancia que puede haber entre 2 valores representables por nuestro sistema, y resolución máxima es la máxima distancia.
Se viene una entrega!
A saber: A no dormirse con IEEE que se complica el tema!