1 / 11

Koprocesor . Reprezentacja zmiennoprzecinkowa liczb rzeczywistych.

Koprocesor . Reprezentacja zmiennoprzecinkowa liczb rzeczywistych.

sari
Télécharger la présentation

Koprocesor . Reprezentacja zmiennoprzecinkowa liczb rzeczywistych.

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Koprocesor. Reprezentacja zmiennoprzecinkowa liczb rzeczywistych.

  2. Reprezentacja liczby rzeczywistej zapisanej za pomocą notacji naukowej. Ze względu na wygodę operowania na takich liczbach, przyjmuje się ograniczony zakres na mantysę i cechę. Powoduje to, że reprezentacja liczby rzeczywistej jest tylko przybliżona, a jedna liczba zmiennoprzecinkowa może reprezentować różne liczby rzeczywiste z pewnego zakresu.  liczba zmiennoprzecinkowa = mantysa * podstawacecha

  3. Wartość liczby zmiennoprzecinkowej (różnej od zera) określa wyrażenie: Mantysę Mx z kolei można przedstawić w postaci:   Mx=Ix+Fx   gdzie: Ix - część całkowita mantysy,  Fx- jej częścią ułamkowa. 

  4. Przykład kodowania liczby zmiennoprzecinkowej Kodowanie liczby 12.25 w formacie 32-bitowym Liczbę 12.25 przedstawiamy w postaci iloczynu . Wykładnik potęgi k musi być tak dobrany, by spełniony był warunek normalizacji mantysy , czyli Łatwo zauważyć, że warunek normalizacji jest spełniony, gdy k = 3. Zatem Ponieważ część całkowita mantysy nie jest kodowana, więc w polu mantysy zostanie wpisana liczba , zaś w polu wykładnika (po przesunięciu o 127) liczba  . Ostatecznie otrzymamy

  5. Jednostka zmiennopozycyjna, FPU(angielskie Floating Point Unit), blok funkcjonalny procesora, zaopatrzony we własne rejestry zmiennopozycyjne (zmiennoprzecinkowe), wykonujący działania w arytmetyce zmiennopozycyjnej. Jednostka zmiennopozycyjna występuje w większych procesorach 32-bitowych i 64-bitowych. Prostsze systemy mikroprocesorowe w celu wykonywania obliczeń zmiennopozycyjnych kooperują z układami współprocesorów arytmetycznych lub korzystają z ich emulatorów.

  6. Rejestr  stanu  koprocesora rejestr stanu koprocesora zawiera pola, które odzwierciedlają sytuację wewnątrz koprocesora: Rejestr  sterujący  koprocesora   rejestr sterujący koprocesora zawiera pola, które modyfikują działanie koprocesora; zawartość tego rejestru zmienia się wyłącznie wskutek jawnego załadowania go przez program.

  7. Instrukcje Koprocesora FLD                       ładowanie na wierzchołek stosu koprocesora liczby zmiennoprzecinkowej pobranej z lokacji pamięci lub ze stosu koprocesora, np.: FLD                  z                                        liczba może być też pobrana ze stosu koprocesora, np.:                                                FLD                  ST(3) FILD                      ładowanie na wierzchołek stosu liczby całkowitej z lokacji pamięci; przed załadowaniem na stos format jest zmieniany na 80-bitowy; FBLD     jw.: ładowanie liczby w kodzie BCD. FST                       przesłanie zawartości wierzchołka stosu do lokacji pamięci lub do innego rejestru stosu koprocesora, np.:                                    FST                  ST(7)    ; przesyłanie ST(7) ST(0) FSTP                    przesłanie zawartości wierzchołka stosu do lokacji pamięci lub do innego rejestru koprocesora, a następnie usunięcie liczby (P – POP) z wierzchołka stosu; FIST                       przesłanie zawartości wierzchołka stosu do lokacji pamięci połączone z przekształceniem  na format całkowity; zaokrąglenie następuje wg zawartości pola RC; FISTP                   jw., ale po przesłaniu następuje usunięcie liczby z wierzchołka stosu; FBST                    przesłanie zawartości wierzchołka stosu do lokacji pamięci połączone z przekształceniem  na format BCD; FBSTP                   jw., ale po przesłaniu następuje usunięcie liczby z wierzchołka stosu;

  8. Instrukcja                                    FSTP               ST(0) powoduje usunięcie liczby znajdującej się na wierzchołku stosu. FXCH                    zamienia wskazany rejestr koprocesora z wierzchołkiem stosu. Ładowanie liczb na wierzchołek stosu: FLDZ                   – ładowanie 0, FLD1                   – ładowanie 1, FLDPI                   – ładowanie pi , FLDL2E                – ładowanie log 2 e FLDL2T                – ładowanie log 2 10, FLDLG2              – ładowanie log 10 2, FLDLN2              – ładowanie log e  2,

More Related