Scroll to navigation

__SETFPUCW(3) Podręcznik programisty Linuksa __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

1997-03-08 Linux i386