Przyzwyczajeni jesteśmy do systemu dziesiętnego. Jednak w informatyce często używamy systemu szesnastkowego. W zapisie od 0 do 9 nie ma różnic między tymi dwoma systemami liczbowymi. Gdy w systemie dziesiętnym przechodzimy do następnej dziesiątki, to w systemie szesnastkowym aż do 15 posługujemy się pojedynczymi znakami:
| System dziesiętny | System szesnastkowy |
| 0 | 0 |
| 1 | 1 |
| 2 | 2 |
| 3 | 3 |
| 4 | 4 |
| 5 | 5 |
| 6 | 6 |
| 7 | 7 |
| 8 | 8 |
| 9 | 9 |
| 10 | A |
| 11 | B |
| 12 | C |
| 13 | D |
| 14 | E |
| 15 | F |
Dopiero po przejściu przez 15 pojawiają się w systemie szesnastkowym liczby dwucyfrowe:
| System dziesiętny | System szesnastkowy |
|---|---|
| 16 | 10 |
| 17 | 11 |
| 18 | 12 |
| 19 | 13 |
| ... | ... |
| 26 | 1A |
| 27 | 1B |
| ... | ... |
| 42 | 2A |
| 43 | 2B |
| ... | .... |
| 170 | AA |
| 171 | AB |
| ... | ... |
| 255 | FF |
Zauważ, że od 0 do F jest 16 cyfr, co możemy zapisać jako 24, a od 0 do FF jest 256 liczb, co możemy zapisać jako 28. System szesnastkowy pozwala zapisać na jednym bajcie liczbę od 0 do 255 za pomocą maksymalnie dwóch znaków. Oszczędzamy zasoby komputera i jednocześnie podajemy dane w sposób łatwy do konwersji na system dwójkowy.
Jak zamienić liczbę z systemu dziesiętnego na szesnastkowy?
Metoda jest następująca. Dzielimy zamienianą liczbę na 16 i sprawdzamy resztę z dzielenia. Wykonujemy dzielenie tak długo, aż z dzielenia bez reszty otrzymamy 0. Przekształćmy dla przykładu liczbę 32378.
| wynik dzielenia | reszta z dzielenia |
|---|---|
| 32378:16=2023 | 10=A (zamieniamy 10 na A, które jest odpowiednikiem 10 w systemie szesnastkowym) |
| 2023:16=126 | 7 |
| 126:16=7 | 14=E |
| 7:16=0 | 7 |
Teraz kolejno wypiszmy otrzymane reszty zaczynając od dołu:
Otrzymaliśmy (7E7A)16
Ćwiczenie 1. Zapisz liczbę 102410 na postać szesnastkową.
Wykonajmy dzielenie:
| wynik dzielenia | reszta z dzielenia |
|---|---|
| 1024:16=64 | 0 |
| 64:16=4 | 0 |
| 4:16=0 | 4 |
Otrzymaliśmy (400)16
Ćwiczenie 2. Zapisz podane liczby w systemie dziesiętnym na postać szesnastkową. Uzupełnij wyniki po stronie postaci szesnastkowej.
| liczba w systemie dziesiętnym | postać szesnastkowa |
|---|---|
| 1000 | 3E8 |
| 65535 | FFFF |
| 44975 | AFAF |
| 254681 | 3E2D9 |
Ćwiczenie 3. Kolory mogą być zakodowane w systemie dziesiętnym lub szesnastkowym. W przestrzeni kolorów RGB(Red, Green, Blue) każdy kanał przyjmuje wartości od 0 do 255 lub odpowiadającym im wartości w systemie szesnastkowym od 0 do FF. Kolor czarny możemy zapisać jako (0, 0, 0) lub #000, kolor biały zapisujemy jako (255, 255, 255) lub w systemie szesnastkowym #FFFFFF, gdzie każda para F odpowiada za 255 na pojedynczym kanale, kolejno czerwonym, zielonym i niebieskim. Przelicz następujące kolory na system szesnastkowy. Uzupełnij kolumnę kodu szesnastkowego.
| kolor | kod dziesiętny | kod szesnastkowy |
|---|---|---|
| Brązowy | (221, 104, 11) | DD680B |
| Żółty | (223, 220, 137) | DFDC09 |
