1. Systemy liczb
1.1. System dziesiętny
Najpopularniejszym systemem liczb jest system dziesiętny, którym posługujemy się na
co dzień.
W systemie dzies...
762 downloads
20 Views
48KB Size
1. Systemy liczb 1.1. System dziesiętny Najpopularniejszym systemem liczb jest system dziesiętny, którym posługujemy się na co dzień. W systemie dziesiętnym występują cyfry: 0, 1, 2, 3, …, 9. Podstawą systemu dziesiętnego jest liczba 10, czyli wszystkie liczby są ciągiem cyfr, które są rozumiane jako mnożnik kolejnych potęg liczby 10: , = ∙ 10ଶ + ∙ 10ଵ + ∙ 10 + ∙ 10ିଵ + ∙ 10ିଶ
1.2.
System dwójkowy – binarny
W systemie dwójkowym występują dwie cyfry: 0, 1. Podstawą systemu jest liczba 2, co oznacza, że kolejne cyfry liczby zapisanej w systemie dwójkowym oznaczają mnożniki kolejnych potęg liczby 2. 0111(2) = 0·23 + 1·22 + 1·21 +1·20 = 0 + 4 + 2 + 1 = 7(10)
1.3.
System ósemkowy – oktalny
W systemie ósemkowym mamy 8 cyfr: 0, 1, 2,…,7. Podstawą systemu jest liczba 8. 341(8) = 3·82 + 4·81 +1·80 = 192 + 32 +1 = 225(10)
1.4.
System szesnastkowy – heksagonalny
Cyfry w systemie szesnastkowym: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. Podstawą systemu jest liczba 16. D5(16) = D·161 + 5·160 = 13·16 +5·1 = 213(10)
2. Przeliczanie liczb pomiędzy systemami 2.1.
Zamiana z systemu dziesiętnego na binarny i odwrotnie
Metoda zamiany liczby z systemu dziesiętnego na dwójkowy polega na dzieleniu liczby przez 2 i zapamiętywanie reszty z tego dzielenia. Następnie dzielimy przez 2 wynik poprzedniego dzielenia aż do otrzymania liczby 0. 67 33 16 8 4 2 1 0
1 1 0 0 0 0 1
↑
67:2 = 33 reszty 1 33:2 = 16 reszty 1 16:2 = 8 reszty 0 8:2 = 4 reszty 0 4:2 = 2 reszty 0 2:2 = 1 reszty 0 1:2 = 0 reszty 1
1000011(2) = 1·26 +0·25 + 0·24 + 0·23 + 0·22 + 1·21 + 1·20 = 64 + 2 + 1 = 67(10)
2.2. Zamiana z systemu dziesiętnego na ósemkowy i odwrotnie 43 5 0
3 5
↑
43:8=5 reszty 3 5:8 = 0 reszty 5
53(8) = 5·81 + 3·80 = 40 +3 =43(10)
2.3. Zamiana z systemu dziesiętnego na szesnastkowy i odwrotnie 437 27 1 0
5 11 1
↑
437:16 = 27 reszty 5 27:16 = 1 reszty 11 (B) 1:16 = 0 reszty 1
11(10) = B 1B5(16) = 1·162 + B·161 + 5·160 = 256 + 11·16 + 5 = 261 + 176 = 437(10)
3. Dodawanie i odejmowanie liczb binarnych W dodawaniu liczb binarnych należy pamiętać o kilku zasadach: 0+0=0 0+1=1 1+0=1 1 + 1 = 0 a 1 zapisujemy w pamięci ( przenosimy o jedną pozycję w lewo) 1 + 1 + 1 = 1 i 1 zapisujemy w pamięci (przenosimy o jedna pozycję w lewo) 5 + 6 = 11 5(10) = 000101(2) 6(10) = 000110(2) 1
000101 + 000110 001011 Odejmowanie liczb w systemie binarnym to nic innego jak dodawanie liczb ujemnych.
4. Liczby ujemne w systemie dwójkowym Istnieje wiele umownych sposobów zapisywania liczb ujemnych w systemie dwójkowym. Najprostszym z nich jest zapisanie bitu znaku na najbardziej znaczącej pozycji (pierwszej od lewej strony). Przyjmujemy, że liczba ujemna ma bit znaku 1, natomiast liczba dodatnia i zero ma bit znaku równy 0. 1=0001, -1=1001. Ważnym jest, aby system zapisu liczb był ściśle określony, aby wiadomo było, iż liczby zapisujemy na przykład na czterech bitach, z których pierwszy jest bitem znaku. Nie określenie dokładnie sposoby zapisu liczb może prowadzić do błędów. Dla przykładu liczba 1 zapisana w systemie dwójkowym na czterech bitach, gdzie pierwszy jest bitem znaku może być zinterpretowana jako liczba 9. Taki system jednak nie jest stosowany ze względu na problemy z operacjami arytmetycznymi (np. dodanie 1 i -1 nie daje 0!)
4.1.
System zapisu U1
W systemie zapisu liczb binarnych U1 kod binarny liczby ujemnej zostaje odwrócony (1 zamieniamy na 0) 6 = 00110 -6 = 11001(U1) Zasady odejmowania liczb w systemie U1: • Odejmowanie dwóch liczb ujemnych od siebie realizowane jest przez dodanie ich do siebie wraz z bitem znaku • Jeżeli dodawanie prowadzi do przeniesienia jedynki z najbardziej znaczącej pozycji, to przeniesienie to wykonujemy na pozycje najmniej znaczącą (czyli dodajemy 1) • Jeżeli wynik dodawania jest dodatni to wynik jest liczbą binarną • Jeżeli wynik dodawania jest ujemny, to wykonujemy na nim jeszcze raz zapis U1 (odwracamy bity) pozostawiając bit znaku bez zmian. 9 – 12 = –3 12(10) = 01100 -12(10) = 10011 0 1 1
1001 0011 1100
1
0011
9 -12 Wynik ujemny więc jeszcze raz wykonujemy zapis U1 (odwrócenie bitów bez zmiany bitu znaku)
-3
9–6=3 9 = 01001 6 = 00110 -6 = 11001(U1) 1
1
1
0 +1 +0
1001 1001 0010
+0 0
0001 0011
9 -6 Mamy przeniesienie jedynki z najbardziej znaczącej pozycji, więc dodajemy ją do najmniej znaczącej pozycji: Wynik jest dodatni, więc jest to liczba binarna 00011(2) = 3(10)
4.2.
System zapisu U2
W zapisie liczb binarnych U2 liczby ujemne uzyskujemy z liczb dodatnich poprzez odwrócenie bitów i dodanie do wyniku liczby 1. 6 = 00110 Negujemy bity: 11001 + 00001 -6 = 11010(U2) Zasady odejmowania liczb w systemie U2: • Odejmowanie dwóch liczb ujemnych od siebie realizowane jest przez dodanie ich do siebie wraz z bitem znaku • Jeżeli dodawanie prowadzi do przeniesienia jedynki z najbardziej znaczącej pozycji, to przeniesienie to zostaje odrzucone • Jeżeli wynik dodawania jest dodatni to wynik jest liczbą binarną • Jeżeli wynik dodawania jest ujemny, to wykonujemy na nim jeszcze raz zapis U2 (odwracamy bity) pozostawiając bit znaku bez zmian. 9 – 12 = –3 12(10) = 01100 -12(10) = 10100 0 1 1
1001 0100 1101
1 +0 1
0010 0001 0011
9 -12 Wynik ujemny więc jeszcze raz wykonujemy zapis U2 (odwrócenie bitów bez zmiany bitu znaku) Odwracamy bity Dodajemy 1
-3
9–6=3 9 = 01001 6 = 00110 -6 = 11010(U2) 1
1
0 +1 +0
1001 1010 0011
9 -6 Mamy przeniesienie jedynki z najbardziej znaczącej pozycji, ignorujemy tą jedynkę Wynik jest dodatni, więc jest to liczba binarna 00011(2) = 3(10)