__SETFPUCW(3)

NAZWA
__setfpucw - zmiana słowa kontrolnego koprocesora w architekturze i386 (przestarzałe)

SKŁADNIA
#include <i386/fpu_control.h>

void __setfpucw((unsigned short) slowo_kontrolne);

OPIS
Funkcja __setfpucw() wpisuje slowo_kontrolne do rejestrów fpu (floating point unit - jednostki zmiennoprzecinkowej) w architekturze i386. Słowo to było używane do zmiany dokładności zmiennoprzecinkowej, zaokrąglania oraz wyjątków zmiennoprzecinkowych.

PRZYKŁAD
__setfpucw(0x1372) ustawia słowo koprocesora w architekturze i386 na
    - rozszerzoną dokładność
    - zaokrąglanie do najbliższego
    - wyjątki podczas przepełnienia, dzielenia przez zero oraz gdy wartość nie jest liczbą

DOSTĘPNOŚĆ
W glibc 2.1 ta funkcja już nie istnieje. Dostępne są nowe funkcje zgodne z ISO C99 o prototyoach w /usr/include/fenv.h, takie jak fegetround, fesetround, służące do ustawiania trybów zaokrąglania koprocesora; takie jak fegetenv, feholdexcept, fesetenv, feupdateenv służące do ustawiania środowiska zmiennoprzecinkowego; takie jak feclearexcept, fegetexceptflag, feraiseexcept, fesetexceptflag, fetestexcept, służące do obsługi wyjątków zmiennoprzecinkowych.

Jeśli mimo wszystko potrzebny jest bezpośredni dostęp do słowa kontrolnego FPU, można posłużyć się zdefiniowanymi w /usr/include/fpu_control.h makrami _FPU_GETCW i _FPU_SETCW.

ZOBACZ TAKŻE
feclearexcept(3)
/usr/include/i386/fpu_control.h