Skip to main content

Co to jest jednostka zmiennoprzecinkowa?

Jednostka zmiennoprzecinkowa jest funkcjonalnym blokiem procesora komputerowego, który wykonuje operacje arytmetyczne o zmiennym punkcie.Znana również akronimem FPU, jednostka zmiennoprzecinkowa może być również fizycznie oddzielnym przetwarzaniem.FPU zwykle uzyskuje dostęp do danych za pomocą tych samych trybów adresowania, co reszta procesora i ogólnie obejmuje własne rejestry.Procesor wykorzystuje FPU do obliczania trygonometrycznych, logarytmicznych i podstawowych funkcji arytmetycznych o zmiennym punkcie.Używa również FPU do ładowania, przechowywania i porównywania liczb w kilku typach danych liczb całkowitych i zmiennoprzecinkowych.

Wiele procesorów nie zawiera jednostki zmiennoprzecinkowej.Większość mikroprocesorów wyprodukowanych przez Intel Corporation i Motorola zarejestrowane na przykład nie zawiera na przykład jednego.Wiele procesorów obliczeniowych ustawionych instrukcji (RISC) i wbudowanych kontrolerów też ich nie ma.Te układy zawierają arytmetyczną jednostkę logiczną (ALU) do wykonywania podstawowych funkcji logicznych arytmetycznych i bitowych.Matematyka zmiennoprzecinkowa jest obsługiwana przez zewnętrznego współtworzenia lub bibliotekę oprogramowania.

Większość procesorów i systemów oprogramowania wdraża standard Institute of Electrical and Electronics Engineers (IEEE) dla operacji zmiennoprzecinkowych.Standard IEEE-754 został wydany po raz pierwszy w 1985 r. I rozszerzony w 2008 r., O obejmuje dodatkowe typy danych.Definiuje kilka typów danych liczb całkowitych i zmiennoprzecinkowych, każdy z własną precyzją, reprezentacją i zakresem liczbowym.Definiuje także wiele operacji arytmetycznych, metody zaokrąglania i obsługi wyjątków, takich jak podział zero.Niezależnie od tego, czy matematyka jest wykonywana przez jednostkę zmiennoprzecinkową, czy nie, standard zmiennoprzecinkowy IEEE gwarantuje identyczne wyniki.

Oprócz dodania, odejmowania, mnożenia i podziału, jednostka zmiennoprzecinkowa może wykonywać wiele innych operacji.Często obejmują one skalowanie, kwadratowe i logarytmiczne obliczenia.Zwykle dostarczane są również funkcje trygonometryczne sinusoidalne, cosinusowe i częściowe.Liczby liczb całkowitych i pływających można porównać z FPU i przekonwertować z jednej precyzji na drugą.Można je również zaokrąglić w dowolnym kierunku i przechowywać bezpośrednio do pamięci głównej procesorów.

FPU procesora graficznego może zawierać często powtórzone funkcje wspólne dla trójwymiarowej obrotu obiektów lub animacji.Wiele wbudowanych kontrolerów zostało zaprojektowanych z procesorami zoptymalizowanymi pod kątem cyfrowego przetwarzania sygnałów (DSP).Mogą być one używane w aplikacjach audio i komunikacyjnych i mogą na przykład zawierać FPU, które są dobre w szybkich transformacjach Fouriera (FFTS).Procesory kryptografii często obejmują FPU do szybkiego obliczenia algorytmów szyfrowania matematyki.Ogólne wielordzeniowe procesory mogą również obejmować jedną jednostkę zmiennoprzecinkową dla każdego regularnego rdzenia procesora.