Szesnastkowy system liczbowy
System liczb szesnastkowych, często skrócony do "kalab", jest systemem liczbowym składającym się z 16 symboli (podstawa 16). Standardowy system liczbowy nazywany jest dziesiętnym (podstawa 10) i używa dziesięciu symboli: 0,1,2,3,4,5,6,7,8,9. W systemie szesnastkowym stosuje się liczby dziesiętne i sześć dodatkowych symboli. Nie ma symboli liczbowych, które reprezentują wartości większe niż dziewięć, dlatego używa się liter zaczerpniętych z alfabetu angielskiego, a konkretnie A, B, C, D, E i F. System szesnastkowy A = dziesiętny dziesiętny, a szesnastkowy F = dziesiętny 15.
Ludzie najczęściej używają systemu dziesiętnego. Jest to prawdopodobnie spowodowane tym, że ludzie mają dziesięć palców na rękach. Komputery mają jednak tylko włączone i wyłączone, zwane cyfrą binarną (lub bitem, w skrócie). Liczba binarna jest tylko ciągiem zer i jedynek: 11011011, na przykład. Dla wygody, inżynierowie pracujący z komputerami mają tendencję do grupowania bitów razem. We wcześniejszych czasach, np. w latach 60-tych, grupowaliby po 3 bity na raz (podobnie jak duże liczby dziesiętne są grupowane w trójki, jak liczba 123 456 789). Trzy bity, każdy z nich jest włączony lub wyłączony, mogą reprezentować osiem liczb od 0 do 7: 000 = 0; 001 = 1; 010 = 2; 011 = 3; 100 = 4; 101 = 5; 110 = 6 i 111 = 7. Nazywa się to ósemkowym.
W miarę jak komputery powiększały się, wygodniej było grupować bity o cztery zamiast trzech. To podwaja liczby, które symbol by reprezentował; może mieć 16 wartości zamiast ośmiu. Szesnastkowy = 6 i dziesiętny = 10, więc jest on nazywany szesnastkowym. W żargonie komputerowym cztery bity tworzą nibble (czasem pisane nybble). Nibble to jedna cyfra w systemie szesnastkowym, zapisana za pomocą symbolu 0-9 lub A-F. Dwie nibble tworzą bajt (8 bitów). W większości operacji komputerowych wykorzystuje się bajt lub wielokrotność bajtu (16 bitów, 24, 32, 64 itd.). System szesnastkowy ułatwia zapis tych dużych liczb binarnych.
Aby uniknąć pomyłek z systemem dziesiętnym, ósemkowym lub innym systemem numeracji, liczby szesnastkowe są czasami zapisywane z "h" po lub "0x" przed liczbą. Na przykład, 63h i 0x63 oznaczają 63 liczby w systemie szesnastkowym.
Wartości szesnastkowe
System szesnastkowy jest podobny do systemu liczb ósemkowych (podstawa 8), ponieważ każdy z nich można łatwo porównać do systemu liczb binarnych. System szesnastkowy używa czterobitowego kodowania binarnego. Oznacza to, że każda cyfra w systemie szesnastkowym jest taka sama jak cztery cyfry w systemie binarnym. Octal używa trzy-bitowego systemu binarnego.
W systemie dziesiętnym, pierwsza cyfra to jedno miejsce, następna cyfra po lewej to miejsce dziesiętne, następna to miejsce setne, itd. W systemie szesnastkowym, każda cyfra może mieć 16 wartości, a nie 10. W systemie szesnastkowym każda cyfra może mieć 16 wartości, a nie 10. Oznacza to, że cyfry mają miejsce jeden, szesnaście, a następna jest miejscem 256. Tak więc 1h = 1 miejsce po przecinku, 10h = 16 miejsc po przecinku, a 100h = 256 w systemie dziesiętnym.
Przykładowe wartości liczb szesnastkowych przeliczone na dwu-, ósemkowe i dziesiętne.
|
Konwersja
Binarny do szesnastkowego
Zmiana liczby z binarnej na szesnastkową wykorzystuje metodę grupowania. Numer binarny jest podzielony na grupy składające się z czterech cyfr, zaczynając od prawej. Grupy te są następnie konwertowane na cyfry w systemie szesnastkowym, jak pokazano na powyższym wykresie dla liczb w systemie szesnastkowym od 0 do F. Aby zmienić z szesnastkowego na szesnastkowy, wykonuje się odwrotną zmianę. Cyfry szesnastkowe są zmieniane na binarne, a grupowanie jest zazwyczaj usuwane.
Binarny | Ugrupowania | Hex | |||
01100101 | 0110 | 0101 | 65 | ||
010010110110 | 0100 | 1011 | 0110 | 4B6 | |
1101011101011010 | 1101 | 0111 | 0101 | 1010 | D75A |
Kiedy ilość bitów w liczbach binarnych nie jest wielokrotnością 4, jest ona wyściełana zerami, aby to zrobić. Przykłady:
- binarny 110 = 0110, co stanowi 6 Hex.
- binarny 010010 = 00010010, czyli 12 Hex.
Sześciokrotne do dziesiętnego
Aby przekonwertować liczbę z szesnastkowego na dziesiętny, istnieją dwa wspólne sposoby.
Pierwsza metoda jest częściej wykonywana przy konwersji ręcznej:
- Dla każdej cyfry szesnastkowej należy użyć wartości dziesiętnej. Dla 0-9 jest ona taka sama, ale A = 10, B = 11, C = 12, D = 13, E = 14 i F = 15.
- Zachowaj sumę liczb przeliczonych na każdym etapie poniżej.
- Zacznij od najmniej znaczącej cyfry szesnastkowej. To jest ta cyfra po prawej stronie. To będzie pierwsza pozycja w sumie.
- Weź drugą co do wielkości cyfrę. To jest obok cyfry po prawej stronie. Pomnóż wartość dziesiętną cyfry przez 16. Dodaj to do sumy.
- Zrób to samo dla trzeciej co do wielkości znaczącej cyfry, ale pomnóż ją przez 162 (to jest 16 kwadratów, czyli 256). Dodaj ją do sumy.
- Kontynuuj dla każdej cyfry, mnożąc każde miejsce przez kolejną potęgę 16. (4096, 65536, itd.)
| Lokalizacja | |||||
6 | 5 | 4 | 3 | 2 | 1 | |
Wartość | 1048576 (165) | 65536 (164) | 4096 (163) | 256 (162) | 16(161) | 1 (160) |
Kolejna metoda jest częściej wykonywana przy konwersji numeru w oprogramowaniu. Nie musi wiedzieć, ile cyfr ma dana liczba przed jej rozpoczęciem i nigdy nie mnoży się jej przez więcej niż 16, ale na papierze wygląda na dłuższą.
- Dla każdej cyfry szesnastkowej należy użyć wartości dziesiętnej. Dla 0-9 jest ona taka sama, ale A = 10, B = 11, C = 12, D = 13, E = 14 i F = 15.
- Zachowaj sumę liczb przeliczonych na każdym etapie poniżej.
- Zacznij od najważniejszej cyfry (cyfra po lewej stronie). Jest to pierwsza pozycja w sumie.
- Jeśli istnieje inna cyfra, należy pomnożyć sumę przez 16 i dodać wartość dziesiętną kolejnej cyfry.
- Powtarzaj powyższy krok, aż do momentu, gdy nie będzie więcej cyfr.
Przykład: 5Fh i 3425h z dokładnością do jednego miejsca po przecinku, metoda 1
|
|
|
|
Przykład: 5Fh i 3425h z dokładnością do jednego miejsca po przecinku, metoda 2
|
|
|
|
Powiązane strony
- Binarny system numeryczny
- System numeracji ośmiokątnej
- System cyfr dziesiętnych
Pytania i odpowiedzi
P: Co to jest system liczb szesnastkowych?
O: System liczbowy szesnastkowy to system liczbowy o podstawie 16, składający się z 16 symboli.
P: Jakich dziesięciu symboli używa się w systemie dziesiętnym (podstawa 10)?
O: Dziesięć symboli używanych w systemie dziesiętnym (baza 10) to 0,1,2,3,4,5,6,7,8 i 9.
P: Jakich sześciu dodatkowych symboli używa system szesnastkowy?
O: W systemie szesnastkowym używa się liter z alfabetu angielskiego - A, B, C, D, E i F.
P: Ile bitów zawiera jeden bajt w nowoczesnych komputerach?
O: W nowoczesnych komputerach każdy bajt zawiera zazwyczaj osiem bitów.
P: Jak inżynierowie i informatycy nazywają wartości czterobitowe?
O: Inżynierowie i informatycy określają wartości czterobitowe jako nibble (czasami pisane jako nybble).
P: Jak uniknąć pomyłki z innymi systemami numeracji przy zapisie liczb szesnastkowych?
O: Aby uniknąć pomyłek z innymi systemami numeracji przy zapisie liczb szesnastkowych, można dodać "h" po lub "0x" przed liczbą. Na przykład 63h lub 0x63 oznacza 63 w systemie szesnastkowym.