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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.