RE: Arrondi sur les flottants
Laurent GUERBY <[email protected]>
| Newsgroups | gmane.comp.lang.ada.france |
|---|---|
| Message-ID | <[email protected]> |
On Thu, 2005-11-03 at 12:02 +0100, FARAIL, Patrick wrote: > Cela répond en partie à ma question : l'autre partie concerne l'arrondi des nombres réels non constants (issus de calcul). Pour les calculs, c'est non specifie je crois. Sur certaines plateformes, la fonction init.c:__gnat_init_float(void) manipule l'etat du FPU, et sur SPARC on doit pouvoir choisir le mode d'apres la doc du processeur. Si vous avez acces a une fonction de la librairie C dans votre environnement qui manipule le FPU, le plus simple c'est de faire un pragma Import cote Ada et de l'appeller, d'apres mes recherches la fonction C99 est fesetround : http://developers.sun.com/prodtech/cc/documentation/ss10_docs/mr/man3m/fesetround.3m.html Sinon il faudra jouer avec un peu d'assembleur inline. Ou demander au support AdaCore :). Laurent _______________________________________________ Site WWW de l'association Ada-France: http://www.ada-france.org/ [email protected] http://www.ada-france.org/mailman/listinfo/ada-france