Brojevni sustav
Brojevni sustav je zajednički naziv za skup pravila pomoću kojih se jednoznačno zapisuju brojevi. Pravila opisuju kako se brojevi zapisuju (znamenke), kao i kako se zapis jednoznačno tumači. Važno svojstvo brojevnog sustava je mogućnost zapisa svih (ili barem prirodnih) brojeva.
Naziv | binarni | oktalni | dekadski | heksadekadski | seksagezimalni |
---|---|---|---|---|---|
Baza | 2 | 8 | 10 | 16 | 60 |
Pošto većina svijeta danas koristi pozicijski brojevni sustav, uz brojevni sustav usko se veže pojam baze brojevnog sustava. Baza brojevnog sustava je vrijednost koja se pridružuje pojedinoj znamenki u pozicijskom brojevnom sustavu, ovisno o njenom položaju u zapisu.
Danas najrašireniji brojevni sustav zapisuje je pozicijski, zapisuje se pomoću "arapskih" znamenaka, a baza mu je 10 (dekadski brojevni sustav).
Za predstavljanje prvih 10 znamenaka uzimaju se znakovi: '0','1','2','3','4','5','6','7','8','9' Neki brojevne baze s više od deset znamenaka, uzimaju velika slova engleske abecede za predstavljanje znamenaka: 'A','B','C','D','E','F'... Tako 'A' predstavlja znamenku '10', 'B' -> '11', C -> '12', ..., dok je 'Z' znamenka '36'. Dalje se obično uzimaju mala slova engleske abecede: 'a' -> '37', 'b' -> '38', ..., 'z' -> '62'.
Čovjeku je najlakše vršit pretvorbu između baza tako da se prvo broj kojeg pretvaramo, zapiše kao dekadski broj (uzmimo na primjer broj 100110101 s bazom 2). Njega pretvaramo u dekadski broj na sljedeći način:
100110101(2) = 1*2^0 + 0*2^1 + 1*2^2 + 0*2^3 + 1*2^4 + 1*2^5 + 0*2^6 + 0*2^7 + 1*2^8 = = 1 + 0 + 4 + 0 + 16 + 32 + 0 + 0 + 256 = = 309(10)
Dakle gledali smo znamenke od zadnje prema prvoj, množeći znamenku s i-tom potencijom baze broja iz kojeg pretvaramo, ako je 'i' mjesto znamenke odozada, krenuvši brojanje od nule. Isto tako možemo uzeti i broj s bazom većom od 10, npr. heksadekadska baza:
6CA8(16) = 8*16^0 + 10*16^1 + 12*16^2 + 6*16^3 = = 8 + 160 + 3072 + 24576 = 27816(10)
Nakon toga, dobiveni dekadski broj možemo dijeliti s bazom u koju ga želimo pretvoriti dok rezultat dijeljenja ne bude 0 i promatrati svaki put ostatak dijeljenja. Nizanjem ostataka djeljenja s desna na lijevo u obliku odgovarajućih znamenki, dobivamo broj koji smo tražili. Na primjer pretvorba broja iz dekadske u oktalnu bazu bi izgledala ovako:
OSTATAK 27816 / 8 = 3477 0 3477 / 8 = 434 5 434 / 8 = 54 2 54 / 8 = 6 6 6 / 8 = 0 6 27816(10)=66250(8)
Pretvorba tog broja u natrag heksadekadsku bazu:
OSTATAK 27816 / 16 = 1738 8 1738 / 16 = 108 10 108 / 16 = 6 12 6 / 16 = 0 6 27816(10)=6CA8(16)