Coma flotante

De Wikipedia, la enciclopedia libre
Esta es una versión antigua de esta página, editada a las 14:38 1 sep 2008 por BotSottile (discusión · contribs.). La dirección URL es un enlace permanente a esta versión, que puede ser diferente de la versión actual.

Coma flotante o punto flotante es un método de representación de números reales que se puede adaptar al orden de magnitud del valor a representar, usualmente trasladando la coma decimal —mediante un exponente— hacia la posición de la primera cifra significativa del valor.

De esta forma, con un número dado de dígitos representativos se obtiene mayor precisión que con la coma fija, debido a que el valor de estos dígitos es siempre significativo sea el que sea el orden de magnitud del número a representar. Debido a esta adaptación, permite representar un rango mucho mayor de números (determinado por los valores límite que puede tomar el exponente).

Su uso es especialmente interesante en la informática pues permite trabajar con números decimales en rangos amplios, aunque también se usa el truncado de decimales.

Representación

Representación binaria de números en coma flotante de doble precisión.

Una representación en coma flotante se compone de tres números (campos) que siguen el siguiente patrón:

r: valor real del número a representar
m: mantisa o significando, dígitos significativos del número. El tamaño máximo de este campo, usualmente fijo y limitado, determina la precisión de la representación. Este campo está usualmente normalizado, es decir, su parte entera sólo consta de un dígito (que será la primera cifra significativa del número a representar).
b: base del sistema de representación (10 en sistema decimal, 8 en sistema octal, 2 en sistema binario, etc)
e: exponente, orden de magnitud del significando. El mínimo y máximo valor posible del exponente determinan el rango de valores representables. Cabe añadir que cuando e vale cero el valor real coincide con el significando.

En ciertos casos se usa como , con un cuarta mantisa, s, que tiene el valor de 1 ó -1 según el signo del número (que se extrae del significando).

Sistema decimal

Con el fin de optimizar la notación de cifras de numerosos dígitos, se acude al uso de unidades múltiplos en el caso de ser un valor métrico o a la coma flotante en los demás. Su uso es común en la física por los valores amplios e imprecisos que se acostumbran a obtener. Por esta razón también se incluye cierta permisividad con la inexactitud del valor. El error que puede surgir del empleo de este método se suele combinar al error calculado de los resultados.

El método utilizado es mover la coma a la parte más significativa de la cifra, es decir, variando el peso aritmético de los dígitos que lo componen. Para entender el significado de los números en coma flotante, acudimos a ejemplos más evidentes del sistema decimal:

  • Supongamos que tenemos los siguientes números reales: 3135,07; 0,04576 y 69233704,063.
  • Tomando de éstos sus 6 dígitos significativos, su conversión a notación de coma flotante normalizada, en donde la coma decimal se sitúa a la derecha del primer dígito, se escribirán 3,13507×103; 4,57600×10-2 y 6,92337×107.

Como se observa en estos ejemplos, la coma decimal se ha desplazado hacia la derecha o hacia la izquierda para obtener la misma estructura en la notación. La pérdida de información en el tercer caso es potencialmente negligible, su error es del 0,001%.

En notación de coma fija, con 4 dígitos para los enteros y 2 dígitos, para los decimales se obtendría 3135,07; 0,04 y 3704,06 pudiendo perder información importante en entornos no controlados de uso.

Sistema binario

Un valor real se puede extender a la izquierda o a la derecha de forma arbitraria. En la informática se dispone de una cantidad limitada de dígitos para representar un valor, un número real puede rebasar este rango con facilidad. La coma flotante proporciona un cambio de ponderación que en este entorno técnico permite almacenar valores con partes significativas de peso alejado a 0, esto es alejadas de la coma a su derecha o a su izquierda. La limitación se halla cuando existe información de peso mucho menor al de la parte significativa que es necesariamente truncado. Sin embargo, y según el uso, la relevancia de esos datos puede ser despreciable, razón por la cual el método es interesante pese a ser una potencial fuente de error.

Técnicamente no se puede colocar una coma en una cifra puesto que sólo se pueden manejar valores de 0 y 1. Para resolver el problema se fuerza que la mantisa esté normalizada, con lo cual se conoce la posición de la coma.

El bit de mayor peso define si hay signo negativo o no lo hay. Le siguen una serie de bits que definen el exponente en defecto a la mitad del rango de dichos bits. El resto de bits son la mantisa.

Emplearemos varios ejemplos en una notación de 16 bit para describir el método usado:

En este caso, el exponente ocupa 6 bits capaces de representar de 0 a 63, por lo tanto, al exponente se le suma 31 en esta notación. La mantisa, al ser normalizada, tendrá siempre un 1 en su parte entera. Este bit redundante se denomina bit oculto o implícito y no se incluye en esta notación.

La notación genérica mencionada arriba para la coma flotante es pues respectivamente:

(con todos los valores expresados en representación binaria)

La notación en coma flotante es más lenta de procesar y menos precisa que la notación en coma fija, pero dado un tamaño fijo de dígitos, permite un mayor rango en los números que se pueden representar con ellos.

Debido a que las operaciones aritméticas que se realizan con números en coma flotante son muy complejas de realizar, muchos sistemas destinan un procesador especial para la realización específica de este tipo de operaciones, denominado Unidad de Coma Flotante.

En ordenadores y calculadoras los números en coma flotante se suelen representar de forma distinta. Donde se debería escribir se suele escribir (por ejemplo , también escrito y ; otro ejemplo: ) o incluso, sobre todo en calculadoras científicas: , aunque técnicamente es incorrecto (por ejemplo ).

Véase también

Enlaces externos