Stałopozycyjna reprezentacja liczb
- Reprezentacja stałopozycyjna charakteryzuje się stałym położeniem kropki dziesiętnej.
- Na część całkowitą liczby oraz na część ułamkową przeznaczona jest stała, z góry określona liczba bitów.
- Jeśli na część ułamkową przeznaczone jest 0 bitów to reprezentacja stałopozycyjna służy do przechowywania liczb całkowitych.
- Jeśli liczba, którą chcemy przedstawić w tej reprezentacji,
mieści się na ustalonej liczbie bitów, to może być reprezentowana
dokładnie.
- Jeśli wynik działań wykonywanych na liczbach stałopozycyjnych
nie mieści się na ustalonej liczbie bitów, powstaje nadmiar w
obliczeniach (wynik jest błędnie interpretowany przez komputer).
- Mając do dyspozycji n bitów możemy w reprezentacji stałopozycyjnej przedstawić liczby całkowite z zakresu:
-2n-1 .. 2n-1-1
Przykład
- n=8: -27 .. 27-1, czyli -128 .. 127, odpowiada to typowi danych ShortInt (C++: char)
n=16: -215 .. 215-1, czyli -32788 .. 32787, odpowiada to typowi danych Integer (C++: short)
n=32: -231 .. 231-1, czyli -2 147 483 648 .. 2 147 483 647, odpowiada to typowi danych LongInt (C++: int)
- Deklaracja odpowiedniego typu zmiennych w programie określa dopuszczalny zakres danych.
Brak komentarzy:
Prześlij komentarz