User Intro
Prog Intro
Liste des programmes
Liste des manuels
Table of Contents
cnvflt, c_cnvflt, cnv_float2, locflt, fl_type, get_fltyp, - conversion de formats flottants simple précision.
integer function cnvflt(buf,n,typin)
integer n,typin
float buf(n)
integer function locflt(type)
integer type
#include <inrimage/flt_type.h>
int c_cnvflt(buf,n,typin)
float *buf; int n, typin;
int cnv_float2(buf,n,typ_in,typ_out)
float *buf; int n, typ_in, typ_out;
int fl_type()
int get_fltyp()
cnvflt, c_cnvflt
convertissent le tableau flottant buf de n éléments et de type
type, dans le type flottant de la machine locale.
Ils retournent le nombre de dépassements de capacité rencontrés.
cnv_float2
convertit le tableau buf de type typ_in dans le type typ_out.
Retourne le nombre de dépassements de capacité.
locflt, fl_type
donnent le type de flottant de la machine locale. locflt le renvoie
également dans la variable type.
Si la variable globale Local_float n'est pas initialisée,
ces 2 programmes font appel à get_fltype.
get_fltype
détermine le type flottant de la machine locale en comparant à une table
le codage du nombre -1.
Les types traités sont définis dans <inrimage/flt_type.h>,
à savoir :
-
- FL_PE (0x101) flottant base 16.
FL_GOULD (0x102) flottant base 16, différent du précédent pour les nombres négatifs.
FL_SUN (0x103) flottant IEEE 32 bits, poids forts en tête.
FL_HACKERS (0x104) flottant de type IEEE, pour carte Hackers sps7.
FL_VAX (0x105) flottant Vax.
FL_DEC (0x106) flottant IEEE 32 bits, poids faibles en tête (par exemple decstation).
Intro(3i)
La conversion de certaines valeurs du format IEEE au format IBM peut conduire
à "overflow" ou "underflow".
Le nombre de combinaisons de conversions est limité :
on n'accepte que FL_GOULD, FL_DEC et FL_SUN en sortie.