Systemy liczbowe
Systemy liczbowe to sposoby zapisywania i nazywania liczb. Rozróżnia się systemy liczbowe pozycyjne i niepozycyjne (addytywne).
W systemach liczbowych pozycyjnych liczbę przedstawia się jako ciąg cyfr. Wartość jej jest zależna od położenia (pozycji) cyfr w liczbie. Do systemów pozycyjnych zaliczamy m.in.: dziesiątkowy, dwójkowy, ósemkowy, szesnastkowy.
Do niepozycyjnych systemów liczbowych zaliczamy m.in.: rzymski, hieroglificzny, alfabetyczny, gdzie wartość liczby jest sumą wartości jej znaków cyfrowych.
System dziesiątkowy System dziesiątkowy: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 - to wszystkim znane symbole cyfr arabskiego dziesiątkowego, pozycyjnego systemu liczenia. Każdemu z tych symboli przyporządkowana jest pewna wartość. Z tych prostych symboli tworzymy symbole bardziej złożone wpisując cyfry na tzw. pozycje, w uszeregowaniu od prawej do lewej. I tak najbardziej skrajna prawa pozycja, to pozycja zerowa (pozycja jedności), dalej pozycja pierwsza (pozycja dziesiątek), dalej pozycja druga (pozycja setek), ... itd. Ponieważ omawiany układ pozycyjny jest również układem dziesiątkowym, oznacza to tyle, że podstawą systemu (jednostką wyższego rzędu) jest dziesięć - symbolem jest 10.
Zgodnie z przedstawioną zasadą, każdemu prostemu czy złożonemu symbolowi układu można przyporządkować wartość, zwaną wartością liczbową, krótko liczbą. I tak, np. Symbol 7 56 342
Wartość w systemie 7 *10 0 5 * 10 1 + 6 * 10 0 3 * 10 2 + 4 * 10 1 +2 * 10 0
Liczba siedem pięćdziesiąt sześć trzysta czterdzieści dwa
Ogólnie oznaczając przez cn - cyfrę systemu pozycyjnego, zaś przez p - podstawę systemu, wartość reprezentowaną przez symbol liczby zapisujemy jako sumę iloczynów postaci: cn * p n + . . . + c2 * p 2 + c1 * p 1 + c0 * p 0 Podany wzór dotyczy każdego systemu pozycyjnego i jest jednocześnie algorytmem konwersji (zamiany) liczby zapisanej w innym niż dziesiątkowy system liczenia, na system dziesiątkowy.
Podstawa systemu dziesiątkowego oznaczana jest również dużą literą D. Zatem np. symbole (28)10 i (28)D są sobie równoważne.
System dwójkowy System ten jest podstawą wiodącej obecnie dziedziny wiedzy jaką jest elektronika. Komputer zbudowany jest z układów logicznych, w których sygnały mogą przyjmować tylko 2 stany tzw. stan niski i stan wysoki. Cyfry tego systemu: 0 i 1 zwane są bitami (bit - elementarna jednostka informacji). Każdy ciąg ośmiu kolejnych zer i jedynek tworzy tzw. bajt (bajt - podstawowa jednostka informacji). Każdy z bitów może przyjąć stan 0 lub 1, zatem bajt reprezentuje 2 = 256 stanów.
Podstawą tego systemu jest 2. Stąd też i nazwa - system dwójkowy. System dwójkowy nazywa się również systemem binarnym. Podstawa systemu zastępowana jest dużą literą B. Zatem np. symbole (10101110)2 i (10101110)B są sobie równoważne.
Konwersja liczby z systemu dziesiątkowego na dwójkowy
Liczba
Dzielenie przez 2
( 87)10 =
87 43 21 10 5 2 1
: : : : : : :
2 2 2 2 2 2 2
= = = = = = =
43 21 10 5 2 1 0
reszta 1 1 1 0 1 0 1
wynik = (1010111)2
Konwersja liczby z systemu dwójkowego na dziesiątkowy dokonywana jest na podstawie wzoru, np. (11011101)2 = 1 * 2 7 + 1 * 2 6 + 0 * 2 5 + 1 * 2 4 + 1 * 2 3 +
+ 1*22 +0*21 +1*20= = 128 + 64 + 16 + 8 + 4 + 1 = (221)10
Konwersja liczby z systemu dwójkowego na szesnastkowy
Każdej cyfrze systemu szesnastkowego odpowiada cztero-pozycyjna liczba systemu dwójkowego. Stąd też zamiana postaci liczby z systemu dwójkowego na liczbę systemu szesnastkowego polega na przypisaniu każdej kolejnej cztero-pozycyjnej „paczce” układów zero-jedynkowych odpowiedniej cyfry układu szesnastkowego, np. (1011 | 0011 | 1010)2 = (B3A)16 Jeżeli w zapisie liczby dwójkowej ostatnia „paczka” (z lewej) ma mniej niż cztery pozycje zero-jedynkowe, to uzupełniamy brakujące pozycje zerami, np. (11 | 1011 | 1110)2 = (0011 | 1011 | 1110)2 = (3BE)16
System ósemkowy Liczba zapisana w pozycyjnym systemie ósemkowym, tj. za pomocą ośmiu cyfr, od 0 do 7, np. 074, 0322. W językach programowania liczba ósemkowa rozpoczyna się często od nieznaczącego zera lub znaku #.
Konwersji na system ósemkowy przebiega podobnie jak konwersja liczby na system dwójkowy. W tym jednak przypadku liczbę zapisana w systemie dziesiątkowym dzielimy z resztą przez 8.
System szesnastkowy Nawet niezbyt duża co do wartości liczba z systemu dziesiątkowego zamieniona na postać dwójkową (binarną) jest dosyć długim ciągiem jedynek i zer, a ponowne przeliczenie jej na wartość w systemie dziesiątkowym - procesem żmudnym i długotrwałym. Między innymi dla uproszczenia zapisu i szybkiego przeliczenia wartości wprowadzono system pozycyjny, którego podstawą jest 24, czyli 16 i nazwano systemem szesnastkowym. Cyframi tego systemu są: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. Zależność między cyframi systemu szesnastkowego, a liczbami systemu dziesiątkowego i liczbami systemu dwójkowego przedstawia tabela.
Cyfry systemu szesnastkowego
Liczby systemu dziesiątkowego
Liczby systemu dwójkowego
0
0
0000
1
1
0001
2
2
0010
3
3
0011
4
4
0100
5
5
0101
6
6
0110
7
7
0111
8
8
1000
9
9
1001
A
10
1010
B
11
1011
C
12
1100
D
13
1101
E
14
1110
F
15
1111
Konwersja liczby z systemu szesnastkowego na system dziesiątkowy odbywa się według znanego wzoru, np. (3BE)16 = 3 * 16 2 + 11 * 16 1 + 14 * 16 0 = 768 + 176 + 14 = (958)10
System szesnastkowy nosi też nazwę systemu heksadecymalnego. Podstawa systemu 16 oznaczona jest dużą literą H. Zatem np. symbole: (3BE)16 i (3BE)H są sobie równoważne.