Niedomiar zmiennoprzecinkowy

Z testwiki
Wersja z dnia 02:04, 1 sty 2023 autorstwa imported>Ololuki (drobne techniczne - zbędna spacja)
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)
Przejdź do nawigacji Przejdź do wyszukiwania

Niedomiar zmiennoprzecinkowy, w skrócie niedomiarSzablon:Odn (Szablon:Ang.) – stan podczas obliczeń arytmetycznych na liczbach zmiennoprzecinkowych, gdy wartość bezwzględna uzyskanego wyniku jest mniejsza niż najmniejsza liczba większa od zera możliwa do zapisania w rejestrze lub pamięci.

Prostym przykładem wygenerowania niedomiaru zmiennoprzecinkowego jest podniesienie do kwadratu najmniejszej dodatniej liczby zmiennoprzecinkowej. Na przykład dla 32-bitowych liczb zmiennoprzecinkowych w standardzie IEEE 754 można zapisać

1,181038×1,181038=3,241076

Uzyskany wynik nie mieści się w zakresie dopuszczalnych wartości powodując niedomiar.

Sposoby obsługi niedomiaru

Wystąpienie niedomiaru nie jest błędem krytycznymSzablon:Odn. Powoduje jedynie zmniejszenie dokładności obliczeń[1], lecz obliczenia mogą być kontynuowaneSzablon:Odn. Jego obsługa może być następująca:

  • Zwracanym wynikiem jest zeroSzablon:Odn.
  • Zwracany wynik jest w postaci nieznormalizowanej[2].
  • Generowany jest wyjątek[1] jako sygnał utraty dokładności.
  • Generowany jest błąd[3], a program jest przerywany.

Zobacz też

Przypisy

Szablon:Przypisy

Bibliografia

Linki zewnętrzne