Szesnastkowo |
|
Potęga |
|
Dziesiętnie |
|
1 |
= |
160 |
= |
1 |
1 |
10 |
= |
161 |
= |
16 |
1*16= |
100 |
= |
162 |
= |
256 |
16*16= |
1000 |
= |
163 |
= |
4096 |
256*16= |
10000 |
= |
164 |
= |
65536 |
4096*16= |
100000 |
= |
165 |
= |
1048576 |
65536*16= |
1000000 |
= |
166 |
= |
16777216 |
16777216*16= |
10000000 |
= |
167 |
= |
268435456 |
itd. |
http://www.programix.terramail.pl/mat_sys_hex.htm
245/16=15 reszta 245-240=5/1=5 wynik 0x0F5
5*1+15*16=245
Aby zamienić liczbę z systemu dwójkowego (binarnego) na dziesiętny (decymalny) należy najpierw przypomnieć sobie jak są tworzone liczby w ww systemach - jaka liczba jest ich podstawą.
Podstawą w systemie dwójkowym jest liczba 2 a w systemie dziesiętnym liczba 10.
Aby przeliczyć liczbę z systemu dwójkowego na dziesiętny musimy skorzystać z poniższego wzoru:
Załóżmy, że chcemy przeliczyć z systemu dwójkowego na dziesiętny liczbę:
10101101
W powyższym wzorze w miejsca x'ów wstawiamy na odpowiednie (kolejne) pozycje kolejne cyfry z przeliczanej liczby. Wyglądało by to tak:
Aby uzyskać ostateczny wynik musimy jeszcze to wszystko wyliczyć. Na pierwszy rzut oka może wydawać się to odrobinę skomplikowane ale przy odrobinie wprawy jest to proces bardzo prosty. Wystarczy zauważyć pewną zależność - każda następna potęga liczby 2 jest od swojego poprzednika dokładnie dwukrotnie większa. Co nam daje ta wiedza? Otóż nie musimy pracowicie wyliczać potęg tylko do wzoru wstawić gotowe liczby: 1, 2, 4, 8, 16, 32, 64, 128 (oczywiście kolejne liczby są tworzone tak samo 256, 512, 1024, 2048, itd.).
Po podstawieniu do wzoru otrzymujemy:
I już jest trochę prościej, aby jeszcze całą sprawę ułatwić usuńmy z naszego równania wszystkie elementy które nie mają wpływu na jego ostateczny wynik tzn. wszystkie mnożenia przez zero.
Jak widać zostały nam w równaniu mnożenia... ale mnożenie przez 1 nic nie zmienia, więc zróbmy kolejne uproszczenie.
No cóż niewiele zostało z naszego pierwotnego równania :). Wystarczy tylko dodać liczby a otrzymany wynik jest naszą "przeliczoną" z systemu dwójkowego na dziesiętny liczbą. W tym wypadku jest to liczba 173.
Jak widać przeliczanie liczb z systemu dwójkowego na dziesiętny polega na dodawaniu odpowiednich potęg liczby 2.
Przeliczanie z systemu dziesiętnego na dwójkowy jest odrobinę bardziej skomplikowane. Aby z liczby dziesiętnej uzyskać odpowiadającą jej liczbę dwójkową należy dzielić daną liczbę przez 2, wyniki kolejnych dzieleń zapisujemy w słupku reszty z dzieleń zapisujemy po prawej stronie za kreską, kolejne dzielenia wykonujemy do momentu aż uzyskamy wynik z dzielenia mniejszy niż 1.
Teraz wystarczy przepisać uzyskane reszty z dzieleń od dołu do góry: 10101101