System liczb szesnastkowych, również nazywany base-16 lub czasami po prostu klątwa , to system liczbowy, który wykorzystuje 16 unikalnych symboli reprezentujących określoną wartość. Te symbole to 0-9 i A-F.
System liczbowy, którego używamy w życiu codziennym, nazywamy dziesiętny lub system base-10 i używa 10 symboli od 0 do 9 do reprezentowania wartości.
Gdzie i dlaczego jest używany szesnastkowo?
Większość kodów błędów i innych wartości używanych w komputerze są reprezentowane w formacie szesnastkowym. Na przykład kody błędów zwane kodami STOP, które są wyświetlane na niebieskim ekranie śmierci, są zawsze w formacie szesnastkowym.
Programiści używają liczb szesnastkowych, ponieważ ich wartości są krótsze niż byłyby wyświetlane w systemie dziesiętnym, oraz dużo krótszy niż w binarnym, który używa tylko 0 i 1.
Na przykład wartość szesnastkowa F4240 jest równa 1,000,000 w postaci dziesiętnej i 1111 0100 0010 0100 0000 w binarnym.
Kolejne miejsce w systemie szesnastkowym to HTML kod koloru wyrazić określony kolor. Na przykład projektant stron internetowych użyłby wartości szesnastkowej FF0000, aby zdefiniować kolor czerwony. Jest to podzielone jako FF, 00,00, który określa ilość czerwonych, zielonych i niebieskich kolorów, które powinny zostać użyte ( RRGGBB ); 255 czerwony, 0 zielony i 0 niebieski w tym przykładzie.
Fakt, że wartości szesnastkowe do 255 można wyrazić w dwóch cyfrach, a kody kolorów HTML używają trzech zestawów dwóch cyfr, oznacza to, że istnieje ponad 16 milionów (255 x 255 x 255) możliwych kolorów, które można wyrazić w formacie szesnastkowym, oszczędność dużej ilości miejsca i wyrażanie ich w innym formacie, np. dziesiętnym.
Tak, plik binarny jest w pewien sposób prostszy, ale znacznie łatwiej nam odczytać wartości szesnastkowe niż wartości binarne.
Jak liczyć szesnastkowo
Liczenie w formacie szesnastkowym jest łatwe, o ile pamiętasz, że jest 16 znaków, które składają się na każdy zestaw liczb.
W formacie dziesiętnym wszyscy wiemy, że liczymy tak:
0,1,2,3,4,5,6,7,8,9,10,11,12,13, … dodając wartość 1 przed ponownym rozpoczęciem zestawu 10 liczb (to jest liczby 10).
W formacie szesnastkowym liczymy podobnie, w tym wszystkie 16 liczb:
0,1,2,3,4,5,6,7,8,9, A, B, C, D, E, F, 10,11,12,13 … ponownie, dodając 1 przed rozpoczęciem 16 numerów ponownie.
Oto kilka przykładów trudnych szesnastkowych "przejść", które mogą okazać się pomocne:
… 17, 18, 19, 1A, 1B …
… 1E, 1F, 20, 21, 22 …
… FD, FE, FF, 100, 101, 102 …
Jak ręcznie konwertować wartości hexów
Dodawanie wartości heksadecymalnych jest bardzo proste i odbywa się w bardzo podobny sposób do liczenia liczb w systemie dziesiętnym.
Zwykły problem matematyczny, taki jak 14 + 12, można zwykle wykonać bez zapisywania czegokolwiek. Większość z nas może to zrobić w naszych głowach - to 26. Oto jeden pomocny sposób na to spojrzeć:
14 dzieli się na 10 i 4 (10 + 4 = 14), podczas gdy 12 jest uproszczone jako 10 i 2 (10 + 2 = 12). Po dodaniu razem 10, 4, 10 i 2 jest równe 26.
Po wprowadzeniu trzech cyfr, takich jak 123, wiemy, że musimy spojrzeć na wszystkie trzy miejsca, aby zrozumieć, co naprawdę znaczą.
Ten 3 oznacza, że jest to ostatni numer. Zabierz dwie pierwsze, a 3 nadal 3. 2 jest pomnożona przez 10, ponieważ jest to druga cyfra liczby, tak jak w pierwszym przykładzie. Ponownie zabierz 1 z tego 123, a ty masz 23, czyli 20 + 3. Trzecia liczba od prawej (1) jest podejmowana razy 10, dwa razy (razy 100). Oznacza to, że 123 zamienia się w 100 + 20 + 3 lub 123.
Oto dwa inne sposoby patrzenia na to:
…(N X 102) + (N X 101)+ (N X 100)
lub…
…(N X 10 X 10) + (N X 10) + N
Podłącz każdą cyfrę do właściwego miejsca w formule od góry, aby zmienić 123 w: 100 (1 X 10 X 10) + 20 (2 X 10) + 3lub 100 + 20 + 3, czyli 123.
To samo dotyczy liczby 1000, np. 1234. 1 to naprawdę 1 X 10 X 10 X 10, co sprawia, że jest on na tysięcznym miejscu, 2 na setne, i tak dalej.
Szesnastkowy jest wykonywany dokładnie w ten sam sposób, ale używa 16 zamiast 10, ponieważ jest to system bazowy 16 zamiast bazy-10:
…(N X 163) + (N X 162) + (N X 161)+ (N X 160)
Na przykład powiedzmy, że mamy problem 2F7 + C2C i chcemy znać wartość dziesiętną odpowiedzi. Najpierw należy przekonwertować cyfry szesnastkowe na dziesiętne, a następnie po prostu dodać liczby razem, tak jak w przypadku dwóch powyższych przykładów.
Jak już wyjaśniliśmy, od zera do dziewiątki w układzie dziesiętnym i heksadecymalnym są dokładnie takie same, natomiast liczby od 10 do 15 są reprezentowane jako litery od A do F.
Pierwsza liczba z prawej strony heksadecymalnej wartości 2F7 jest samodzielna, podobnie jak w systemie dziesiętnym, wychodząc na 7. Następna liczba po lewej stronie musi być pomnożona przez 16, podobnie jak druga liczba z 123 (2) powyżej trzeba było pomnożyć przez 10 (2 X 10), aby uzyskać liczbę 20. Wreszcie, trzecia liczba od prawej musi być pomnożona przez 16, dwa razy (co jest 256), jak liczba dziesiętna należy pomnożyć przez 10, dwa razy (lub 100), gdy ma trzy cyfry.
Dlatego rozbicie 2F7 w naszym problemie powstaje 512 (2 X 16 X 16) + 240 (fa 15 X 16) + 7, co przychodzi do 759. Jak widać, F wynosi 15 ze względu na swoją pozycję w sekwencji heksadecymalnej (zob Jak liczyć szesnastkowo powyżej) - jest to ostatnia liczba z możliwych 16.
C2C jest konwertowany na wartości dziesiętne w ten sposób: 3,072 (do 12 X 16 X 16) + 32 (2 X 16) + do 12 = 3,116
Ponownie, C jest równe 12, ponieważ jest 12 wartością, gdy liczymy od zera.
Oznacza to, że 2F7 + C2C to naprawdę 759 + 3,116, co odpowiada 3,875.
Chociaż dobrze jest wiedzieć, jak to zrobić ręcznie, znacznie łatwiej jest pracować z wartościami szesnastkowymi za pomocą kalkulatora lub konwertera.
Przetworniki i kalkulatory heksadecymalne
Konwerter heksadecymalny jest przydatny, jeśli chcesz przetłumaczyć szesnastkowo na dziesiętny lub dziesiętny na szesnastkowy, ale nie chcesz tego robić ręcznie. Na przykład wpisanie wartości Hexa 7FF do konwertera natychmiast pokaże, że równoważna wartość dziesiętna wynosi 2047.
Istnieje wiele heksagonalnych konwerterów online, które są naprawdę proste w użyciu, BinaryHex Converter, SubnetOnline.com i RapidTables to tylko niektóre z nich. Witryny te umożliwiają konwersję nie tylko heksadecymalną na dziesiętną (i odwrotnie), ale także konwertują kod szesnastkowy na i z binarnych, ósemkowych, ASCII i innych.
Kalkulatory szesnastkowe mogą być równie przydatne, co kalkulator dziesiętny, ale w przypadku wartości szesnastkowych. Na przykład 7FF plus 7FF to FFE.
Kalkulator szesnastkowy Math Warehouse obsługuje łączenie systemów liczbowych. Jednym z przykładów może być dodanie wartości heksadecymalnej i binarnej, a następnie wyświetlenie wyniku w formacie dziesiętnym. Obsługuje również ósemkowy.
EasyCalculation.com to jeszcze łatwiejszy w użyciu kalkulator. Odejmie, podzieli, doda i pomnoży dowolne dwie wartości szesnastkowe, które mu dasz, i natychmiast wyświetli wszystkie odpowiedzi na tej samej stronie. Pokazuje również dziesiętne odpowiedniki obok odpowiedzi heksadecymalnych.
Więcej informacji na temat szesnastkowej
Słowo szesnastkowy jest połączeniem hexa (czyli 6) i dziesiętny (10). Binary to base-2, ósemkowa to base-8, a dziesiętna to oczywiście base-10.
Wartości szesnastkowe są czasami zapisywane z prefiksem "0x" (0x2F7) lub z indeksem dolnym (2F7)16), ale nie zmienia wartości. W obu tych przykładach można zachować lub upuścić prefiks lub indeks dolny, a wartość dziesiętna pozostanie 759.