Kodowanie liczb

Nasza ocena:

5
Pobrań: 77
Wyświetleń: 931
Komentarze: 0
Notatek.pl

Pobierz ten dokument za darmo

Podgląd dokumentu
Kodowanie liczb - strona 1 Kodowanie liczb - strona 2 Kodowanie liczb - strona 3

Fragment notatki:

Kodowanie liczb
Kluczowe pojęcia
•Kodowanie liczb całkowitych ze znakiem
•Kombinacja kodowa
•Kod „znak-moduł” (ZM)
•Kod uzupełnień do 1 (U1)
•Kod uzupełnień do 2 (U2)
•Bit znakowy
•Zakres liczb przedstawianych w kodzie
•Uzupełnienie dwójkowe
•Przeniesienie (carry)
•Nadmiar (overflow)
Kod BCD
1
Konieczność kodowania
liczb dwójkowych
Np.
- 19 ¼ (dziesiętnie) = - 10011,01 (dwójkowo)
Problemy:
Cyfry: 0 i 1
O.K.
Znak: + lub -
??
PołoŜenie przecinka ??!
Są tylko dwa stany !
Typy liczb (reprezentacja)
Liczby stałopozycyjne (całkowite)
Integer, fixed-point
Kod U2
Liczby zmiennopozycyjne (rzeczywiste)
Real, floating-point
IEEE 754
2
Kody liczbowe
Kod znak-moduł
sign-magnitude
(ZM)
Kod przesunięty
biased
(+N)
Kod uzupełnień do 1
(kod „odwrotny”)
one’s complement
(U1)
Kod uzupełnień do 2
two’s complement
(U2)
Kody dwójkowe
KaŜdy kod odwzorowuje
liczby z pewnego zakresu
w łańcuchy zero-jedynkowe
Np. liczba dziesiętna (- 23) ma postać:
-10111
w zapisie dwójkowym
110111
w 6-bitowym kodzie ZM
10010111
w 8-bitowym kodzie ZM
11101001
w 8-bitowym kodzie U2
11101000
w 8-bitowym kodzie U1
3
Kody dwójkowe
Łańcuch zero-jedynkowy kodujący liczbę,
czyli tzw. kombinację kodową
moŜna traktować jako bezznakową liczbę dwójkową (lub szesnastkową)
Np. liczba dziesiętna (- 23)
110111
w 6-bitowym kodzie ZM;
wartość kodu 55
10010111
w 8-bitowym kodzie ZM;
wartość kodu 151
11101001
w 8-bitowym kodzie U2;
wartość kodu 233
11101000
w 8-bitowym kodzie U1;
wartość kodu 232
Kody dwójkowe
Łańcuch zero-jedynkowy kodujący liczbę,
czyli tzw. kombinację kodową
moŜna traktować jako bezznakową liczbę dwójkową (lub szesnastkową)
Np. liczba dziesiętna (- 23)
11 0111
w 6-bitowym kodzie ZM;
wartość kodu 55 (37h)
1001 0111
w 8-bitowym kodzie ZM;
wartość kodu 151 (97h)
1110 1001
w 8-bitowym kodzie U2;
wartość kodu 233 (E9h)
1110 1000
w 8-bitowym kodzie U1;
wartość kodu 232 (E8h)
4
Zakres kodowanych liczb
Liczby są kodowane za pomocą skończonej liczby (n) bitów;
stąd liczba wszystkich kombinacji kodowych wynosi
2n
i tylko tyle liczb moŜna w danym kodzie przedstawić.
Zakres kodowanych liczb określa się podając liczbę
najmniejszą Lm i największą LM w danym kodzie.
Nie zawsze Lm = - LM
„Dobre” kodowanie liczb
Dodawanie
dwójkowe
Kod liczby A
+
Kod liczby B
Kod sumy A + B
Suma binarna kodów jest kodem sumy liczb
5
Naturalny zapis arytmetyczny
W zapisie dziesiętnym:
+ 375; - 73; + 73
„znak (+ lub -) i wartość bezwzględna (moduł)”
Analogicznie, np. liczba 19 zapisana dwójkowo ma postać
10011 lub + 10011
a liczba –19 ma postać
- 10011
Kod „znak-moduł”
W kodzie ZM pierwszy bit określa znak wg konwencji:
0 oznacza „+”; 1 oznacza „-”
pozostałe n-1 bitów tworzą zapis dwójkowy modułu liczby.
Np. liczba 19 w kodzie ZM jest zapisywana:
010011
na 6 pozycjach,
0010011
na 7 pozycjach,
00010011 na 8 pozycjach itd.
liczba -19 w tym kodzie ma postać:
110011
na 6 pozycjach,
1010011
na 7 pozycjach,
10010011 na 8 pozycjach itd.

(…)

… dwójkowych
Błędy
zaokrąglenia
Dane
dziesiętne
Konwersja
10
2
Arytmometr
dwójkowy
Obliczenia
dwójkowe
Błędy
zaokrąglenia
Konwersja
2
10
Wyniki
dziesiętne
25
Działania na danych dziesiętnych
Dane
dziesiętne
Obliczenia
dziesiętne
Wyniki
dziesiętne
Arytmometr
dziesiętny
Maszyny dziesiętne
Liczby – w systemie pozycyjnym dziesiętnym
– w zapisie
znak-moduł
uzupełnieniowym pełnym (U10)
uzupełnieniowym niepełnym (U9…
... zobacz całą notatkę



Komentarze użytkowników (0)

Zaloguj się, aby dodać komentarz