Page 10 - Informatyka na czasie. Wiesz, umiesz, zdasz. Podręcznik klasa 2 i 3
P. 10

WIESZ, UMIESZ, ZDASZ


            Sposób na zadania



               Zadanie 1
            Reprezentację zmiennoprzecinkową liczby w systemie binarnym w postaci znormalizowanej można
            wyrazić wzorem:
                                           (–1) znak  ∙ mantysa ∙ 2 cecha
            gdzie: znak – liczba 0 dla liczby dodatniej lub 1 dla liczby ujemnej, mantysa – liczba z przedziału [1; 2],
            cecha – liczba całkowita.
            Przyjmijmy, że na reprezentację liczby w tej postaci przeznaczono 8 bitów: 1 bit na znak, 3 bity na
            cechę oraz 4 bity na mantysę.
                                        znak  cecha    mantysa




            Znak pamiętany jest w najstarszym bicie (bicie znajdującym się najbardziej z lewej strony). Kolejne trzy
            bity reprezentują cechę w kodzie z nadmiarem 3. Oznacza to, że aby obliczyć, ile jest równa cecha,
            od pamiętanej wartości należy odjąć 3, np. 000 reprezentuje wartość –3, 011 – wartość 0, a 111 –
            wartość 4. W bitach przeznaczonych na mantysę pamiętana jest tylko jej część ułamkowa. Części
            całkowitej mantysy nie trzeba pamiętać, ponieważ zawsze jest równa 1.
            Zgodnie z powyższymi założeniami zapis 00011001 oznacza liczbę (–1)  ∙ 1,5625 ∙ 2  = 0,390625.
                                                                             –2
                                                                   0
            W podanym przykładzie bit znaku jest równy 0, więc liczba jest dodatnia. Bity cechy 001 reprezentują
            wartość 1, od której należy odjąć 3. Cecha jest zatem równa –2. Bity mantysy 1001 reprezentują liczbę
                                    –4
                –1
                      –2
                             –3
            1 · 2  + 0 · 2  + 0 · 2  + 1 · 2  = 0,5 + 0,0625 = 0,5625, do której należy dodać część całkowitą
            (liczbę 1). Otrzymujemy mantysę 1,5625.
            Zwróć uwagę, że w omówionym zapisie liczba 0 nie ma reprezentacji. Dlatego przyjmiemy, że jeśli
            wszystkie cyfry mantysy i cechy będą równe 0 (bit znaku nie ma wówczas znaczenia – może być
            równy 0 lub 1), to taka reprezentacja oznacza liczbę 0.
            Rozwiąż poniższe zadania. Odpowiedzi zapisz w sposób wskazany przez nauczyciela.
            Zadanie 1.1 (0–1)
            Znajdź binarne reprezentacje zmiennoprzecinkowe najmniejszej liczby dodatniej i największej liczby
            dodatniej w przedstawionym powyżej systemie zapisu. Podaj także reprezentacje tych liczb
            w systemie dziesiętnym.


              Rozwiązanie:
              Tagi: reprezentacja zmiennoprzecinkowa liczb rzeczywistych, postać znormalizowana, system
              binarny
              Krok 1
              Szukane liczby są dodatnie, dlatego bit znaku każdej z nich jest równy 0.
              Krok 2
              Dla najmniejszej liczby dodatniej mantysa i cecha powinny być jak najmniejsze. Ponieważ
              wszystkie bity cechy i mantysy nie mogą być równe zero, reprezentacja zmiennoprzecinkowa
              najmniejszej liczby to 00000001. Bity cechy 000 reprezentują liczbę 0. Po odjęciu nadmiaru 3
              otrzymujemy cechę –3. Bity mantysy 0001 odpowiadają liczbie
                                     –4
                 –1
              0 · 2  + 0 · 2  + 0 · 2  + 1 · 2  = 0,0625, czyli mantysa jest równa 1 + 0,0625 = 1,0625.
                               –3
                        –2
           190
   5   6   7   8   9   10   11   12   13   14   15