En los números de punto flotante IEEE 754 , el exponente está sesgado en el sentido de ingeniería de la palabra : el valor almacenado se compensa del valor real por el sesgo del exponente , también llamado exponente sesgado . [1] El sesgo se realiza porque los exponentes tienen que ser valores con signo para poder representar valores tanto pequeños como grandes, pero el complemento a dos , la representación habitual de los valores con signo, dificultaría la comparación.
Para resolver este problema, el exponente se almacena como un valor sin signo que es adecuado para la comparación, y al ser interpretado se convierte en un exponente dentro de un rango con signo restando el sesgo.
Al disponer los campos de modo que el bit de signo tome la posición de bit más significativa, el exponente sesgado tome la posición media, entonces la mantisa será la de bits menos significativa y el valor resultante se ordenará correctamente. Este es el caso ya sea que se interprete o no como un valor entero o de punto flotante. El propósito de esto es permitir comparaciones de alta velocidad entre números de punto flotante utilizando hardware de punto fijo.
Para calcular el sesgo para un número de punto flotante de tamaño arbitrario, aplique la fórmula 2 k −1-1 donde k es el número de bits en el exponente. [2]
Al interpretar el número de punto flotante, el sesgo se resta para recuperar el exponente real.
- Para un número de precisión simple , el exponente se almacena en el rango 1 .. 254 (0 y 255 tienen significados especiales) y se interpreta restando el sesgo de un exponente de 8 bits (127) para obtener un valor de exponente en el rango −126 .. +127.
- Para un número de doble precisión , el exponente se almacena en el rango 1 .. 2046 (0 y 2047 tienen significados especiales) y se interpreta restando el sesgo de un exponente de 11 bits (1023) para obtener un valor de exponente en el rango −1022 .. +1023.
- Para un número de precisión cuádruple , el exponente se almacena en el rango 1 .. 32766 (0 y 32767 tienen significados especiales) y se interpreta restando el sesgo de un exponente de 15 bits (16383) para obtener un valor de exponente en el rango −16382 .. +16383.
Historia
El formato de punto flotante del IBM 704 introdujo el uso de un exponente sesgado en 1954.
Ver también
- Compensación binaria (también conocida como exceso de K)
Referencias
- ^ Gosling, John B. (1980). "6.1 Notación de coma flotante / 6.8.5 Representación de exponente". En Sumner, Frank H. (ed.). Diseño de Unidades Aritméticas para Computadoras Digitales . Serie de Ciencias de la Computación de Macmillan (1 ed.). Departamento de Ciencias de la Computación, Universidad de Manchester , Manchester, Reino Unido: The Macmillan Press Ltd . págs. 74, 91, 137. ISBN 0-333-26397-9.
[...] En la representación de punto flotante , un número x está representado por dos números con signo m y e tal que x = m · b e donde m es la mantisa , ae el exponente y b la base de . […] La mantisa a veces se denomina característica y una versión del exponente también tiene este título de algunos autores. Se espera que los términos aquí sean inequívocos. […] [W] usamos un valor de [n exponente] que se desplaza a la mitad del rango binario del número. […] Esta forma especial a veces se denomina exponente sesgado, ya que es el valor convencional más una constante. Algunos autores lo han llamado característica, pero este término no debe usarse, ya que los CDC y otros usan este término para la mantisa. También se conoce como representación de ' exceso - ', donde, por ejemplo, - es 64 para un exponente de 7 bits (2 7−1 = 64). […]
- ^ O'Hallaron, David R .; Bryant, Randal E. (2010). Sistemas informáticos: la perspectiva de un programador (2 ed.). Boston, Massachusetts, Estados Unidos: Prentice Hall . ISBN 978-0-13-610804-7.