środa, 28 września 2016

System szesnastkowy


System szesnastkowy (inaczej heksadecymalny) jest szeroko używany w informatyce. Jego podstawą jest liczba 16 czyli do budowy liczb wykorzystujemy szesnaście cyfr. Pierwszych dziesięć jest takich samych jak w systemie dziesiętnym. Cyfra dziesięć to litera Acyfra 11 to litera B, itd. :
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
Dodatkową własnością jest to, że każdą cyfrę w tym systemie możemy przedstawić za pomocą dokładnie czterech cyfry zero-jedynkowych ponieważ:
16=24
Dlatego komputery nie muszą używać dodatkowych koderów/dekoderów do ich konwersji na dwójkowy i odwrotnie. Gdyby informacje były przedstawiane w systemie dwójkowym, zapis ten byłby bardzo nieczytelny i długi, dlatego w wielu sytuacjach wykorzystuje się w tym celu system szesnastkowy:

Przykładowe zastosowanie

  •  prezentacja kolorów w języku HTML lub w programach graficznych, na przykład w trybie RGB nasycenie każdego z trzech kolorów (czerwonego, zielonego i niebieskiego) jest wyrażana za pomocą dwóch cyfr w systemie szesnastkowym:
    • FF FF FF - biały
    • 00 00 00 - czarny
    • 00 00 FF - niebieski
  • zasoby urządzeń zainstalowanych w komputerze
  • adresowanie pamięci RAM

Konwersja z dziesiętnego na szesnastkowy 

Algorytm zamiany na dziesiętny jest analogiczny jak w przypadku zamiany innych systemów liczbowych na system dziesiętny.
Dla przykładu zamieńmy liczbę (A3F2)HEX. Podstawą jest liczba 16, a więc przemnażamy kolejne cyfry przez kolejne potęgi liczby 16 począwszy od prawej strony:
(A3F2)HEX=A163+3162+F161+2160=
104096+3256+1516+21=41970
Do zamiany na dziesiętny wykorzystujemy algorytm: Schemat Hornera.

Konwersja z dziesiętnego na szesnastkowy

Tu postępujemy tak samo jak w przypadku zamiany dziesiętnego systemu na inne, czyli wykonujemy operację dzielenia całkowitego przez 16 i reszty z dzielenia przez 16. W lewej kolumnie zapisujemy kolejne wyniki z dzielenia przez 16, natomiast w prawej reszty z dzielenia. Pamiętajmy, że wynik spisujemy z prawej kolumny od tyłu.
 dziesiętny na szesnastkowy

Ostatecznie mamy: 41970=(A3F2)HEX

Konwersja z dwójkowego na szesnastkowy

Każda cyfra systemu heksadecymalnego jest reprezentowana przy użyciu czterech bitów (zer lub jedynek). Poniżej pokazane jest przyporządkowanie cyfr:

 A więc zamieniamy kolejne czwórki bitów (od prawej) na cyfry w systemie szesnastkowym. Dla przykładu zamieńmy liczbę: 
(100 1010 0000 1101 0011)2=(4A0D3)HEX

Zamiana na dwójkowy

Tu postępujemy podobnie jak w powyższym podpunkcie. Każdą cyfrę systemu szesnastkowego zamieniamy na cztery bity systemu dwójkowego:
(27F9)HEX=(10 0111 1111 1001)2
Cyfry wiodące opuszczamy. 
Dzięki za uwagę i  oczywiście w razie pytań piszcie w komentarzach ;) !

Coś poszło nie tak,odśwież stronę ;)

Brak komentarzy:

Prześlij komentarz

Uważaj co piszesz,Devon patrzy ;)