subota, 28. siječnja 2012.

Rad s različitim brojevnim sustavima

U računalnom svijetu sve se svodi na binarni brojevni sustav, no da bi ljudi lakše mogli programirati uveden je dekadski i hexadecimalni brojevni sustav. binarni brojevni sustav se koristi samo kod logičkih operacija (i,ili,ne), hexalni se koristi za zapis adresa i njihovih produžetaka (offesetova) dok se dekadski koristi za zapis svih ostalih vrijednosti.
Za binarni brojevni sustav znamo da su znamenke 0 i 1, za decimalni 0,1,2,3,4,5,6,7,8,9, a za hexadecimalni brojevni sustav kojemu je baza (16) dodajemo još zanamenke a=10,b=11,c=12,d=13,e=14,f=15


Pretvaranje decimalnog u binarni ili hex. sustav je lagano kad imate windowsov calculator ili pored sebe neki malo bolji Casio no ako nemate pretvaranje je teško.

Pretvaranje bilo kojeg hex. broja u binarni možemo preko tablice, a pretvaranje bilo kojeg hex. broja ( i bilo kojeg broja bilo koje druge baze) u bazu s brojem 10 preko Hornerovog algoritma:

Također da bismo pretvorili broj s nekom bazom u bazu 10 možemo množiti na
klasičan način: 23A(16)-->2*16^2+3*16^1+10*16^0=570(10)
Prva znamenka * baza na redni broj te znamenke (krenuvši od 0) +
druga znamenka * baza na redni broj baze te znamenke... Da bismo pretvorili broj iz baze (10) u broj s nekom drugom bazom recimo (16) dijelimo broj koji želimo pretvoriti sa bazom u koji želimo pretvoriti i ostatak koji dobijemo je taj broj,
ali gledamo ga od gore:

570/16=35, ostatak=10(A) ^
35/16=2, ostatak=3 |
2/16=0, ostatak=2 | 23A
Napomena adrese idu od 00000000 do 7fffffff prema tome računati adrese bez kalkulatora je vrlo teško.







Nema komentara:

Objavi komentar