__setfpucw - zmiana słowa kontrolnego koprocesora w architekturze i386
(przestarzałe)
Standardowa biblioteka C (
libc,
-lc)
#include <i386/fpu_control.h>
[[deprecated]] void __setfpucw(unsigned short control_word);
Funkcja
__setfpucw() wpisuje
control_word 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.
Ta funkcja była niestandardowym rozszerzeniem GNU.
Od glibc 2.1 ta funkcja już nie istnieje. Dostępne są nowe
funkcje zgodne z C99 o prototypach w
<fenv.h>, takie jak
fegetround(3),
fesetround(3), służące do
ustawiania trybów zaokrąglania koprocesora; takie jak
fegetenv(3),
feholdexcept(3),
fesetenv(3),
feupdateenv(3), służące do ustawiania
środowiska zmiennoprzecinkowego; takie jak
feclearexcept(3),
fegetexceptflag(3),
feraiseexcept(3),
fesetexceptflag(3)
oraz
fetestexcept(3), 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
<fpu_control.h> makrami
_FPU_GETCW i
_FPU_SETCW.
__setfpucw(0x1372)
Ustawia słowo kontrolne 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ą
feclearexcept(3)
<fpu_control.h>
Autorami polskiego tłumaczenia niniejszej strony podręcznika
są: Adam Byrtek <
[email protected]>, Andrzej Krzysztofowicz
<
[email protected]> i Robert Luberda <
[email protected]>
Niniejsze tłumaczenie jest wolną dokumentacją.
Bliższe informacje o warunkach licencji można uzyskać
zapoznając się z
GNU
General Public License w wersji 3 lub nowszej. Nie przyjmuje się
ŻADNEJ ODPOWIEDZIALNOŚCI.
Błędy w tłumaczeniu strony podręcznika prosimy
zgłaszać na adres listy dyskusyjnej
[email protected]