Det hexadecimale talsystem, også kaldet base-16 eller nogle gange bare hex, er et talsystem, der bruger 16 unikke symboler til at repræsentere en bestemt værdi. Disse symboler er 0-9 og A-F.
Talsystemet, som vi bruger i dagligdagen, kaldes decimalsystemet eller base-10-systemet og bruger de 10 symboler fra 0 til 9 til at repræsentere en værdi.
Hvor og hvorfor bruges hexadecimal?
De fleste fejlkoder og andre værdier, der bruges inde i en computer, er repræsenteret i hexadecim alt format. For eksempel er fejlkoder kaldet STOP-koder, der vises på en Blue Screen of Death, altid i hexadecim alt format.
Programmører bruger hexadecimale tal, fordi deres værdier er kortere, end de ville være, hvis de blev vist i decimal, og meget kortere end i binær, som kun bruger 0 og 1.
F.eks. svarer den hexadecimale værdi F4240 til 1, 000, 000 i decimal og 1111 0100 0010 0100 0000 i binær.
Et andet sted hexadecimal bruges er som en HTML-farvekode til at udtrykke en bestemt farve. For eksempel vil en webdesigner bruge hex-værdien FF0000 til at definere farven rød. Dette er opdelt som FF, 00, 00, som definerer mængden af røde, grønne og blå farver, der skal bruges (RRGGBB); 255 rød, 0 grøn og 0 blå i dette eksempel.
Det faktum, at hexadecimale værdier op til 255 kan udtrykkes med to cifre, og HTML-farvekoder bruger tre sæt af to cifre, betyder, at der er over 16 millioner (255 x 255 x 255) mulige farver, der kan udtrykt i hexadecim alt format, hvilket sparer masser af plads i forhold til at udtrykke dem i et andet format som decimal.
Ja, binær er meget enklere på nogle måder, men det er også meget nemmere for os at læse hexadecimale værdier end binære værdier.
Sådan tæller man i hexadecimal
Det er nemt at tælle i hexadecim alt format, så længe du husker, at der er 16 tegn, der udgør hvert sæt tal.
I decimalformat ved vi alle, at vi tæller sådan her:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, … tilføjer et 1, før du begynder på sættet med 10 numre igen (dvs. nummer 10).
I hexadecim alt format tæller vi dog sådan her, inklusive alle 16 tal:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, 10, 11, 12, 13… igen, tilføje en 1 før du begynder at sætte 16-tallet igen.
Her er et par eksempler på nogle vanskelige hexadecimale "overgange", som du måske kan finde nyttige:
…17, 18, 19, 1A, 1B…
…1E, 1F, 20, 21, 22……FD, FE, FF, 100, 101, 102…
Sådan konverteres hex-værdier manuelt
At tilføje hex-værdier er meget simpelt og gøres faktisk på en meget lignende måde som at tælle tal i decimalsystemet.
En almindelig matematikopgave som 14+12 kan norm alt klares uden at skrive noget ned. De fleste af os kan gøre det i vores hoveder - det er 26. Her er en nyttig måde at se det på:
14 er opdelt i 10 og 4 (10+4=14), mens 12 er forenklet som 10 og 2 (10+2=12). Når de lægges sammen, er 10, 4, 10 og 2 lig med 26.
Når tre cifre introduceres, f.eks. 123, ved vi, at vi skal se på alle tre steder for at forstå, hvad de egentlig betyder.
De 3 står for sig selv, fordi det er det sidste tal. Fjern de to første, og 3 er stadig 3. 2'eren ganges med 10, fordi det er det andet ciffer i tallet, ligesom med det første eksempel. Igen, tag 1'eren fra denne 123, og du står tilbage med 23, hvilket er 20+3. Det tredje tal fra højre (1'eren) tages gange 10, to gange (gange 100). Det betyder, at 123 bliver til 100+20+3 eller 123.
Her er to andre måder at se det på:
…(N X 102) + (N X 10 1)+ (N X 100)
eller…
…(N X 10 X 10) + (N X 10) + N
Sæt hvert ciffer på det rigtige sted i formlen fra oven for at gøre 123 til: 100 (1 X 10 X 10) + 20 (2 X 10) + 3 eller 100 + 20 + 3, hvilket er 123.
Det samme er tilfældet, hvis tallet er i tusinder, f.eks. 1, 234. 1'eren er virkelig 1 X 10 X 10 X 10, hvilket gør det i tusindedeles plads, 2 i hundrededele, og så videre.
Hexadecimal udføres på nøjagtig samme måde, men bruger 16 i stedet for 10, fordi det er et base-16-system i stedet for base-10:
…(N X 163) + (N X 16 2) + (N X 161)+ (N X 160)
Sig f.eks., at vi har problemet 2F7+C2C, og vi ønsker at kende svarets decimalværdi. Du skal først konvertere de hexadecimale cifre til decimaler og derefter blot lægge tallene sammen, som du ville gøre med de to eksempler ovenfor.
Som vi allerede har forklaret, er nul til ni i både decimal og hex nøjagtig det samme, mens tallene 10 til 15 er repræsenteret som bogstaverne A til F.
Det første tal længst til højre for hex-værdien 2F7 står for sig selv, ligesom i decimalsystemet, og kommer ud til at være 7. Det næste tal til venstre skal ganges med 16, ligesom andet tal fra 123 (de 2) ovenfor skulle ganges med 10 (2 X 10) for at gøre tallet 20. Til sidst skal det tredje tal fra højre ganges med 16, to gange (som er 256), som f.eks. et decimalbaseret tal skal ganges med 10, to gange (eller 100), når det har tre cifre.
Derfor bliver 2F7 i vores problem 512 (2 X 16 X 16) + 240 (F [15] X 16) + 7, som kommer til 759. Som du kan se, er F 15 på grund af dets position i hex-sekvensen (se Sådan tælles i hexadecimal ovenfor) - det er det allersidste tal ud af de mulige 16.
C2C konverteres til decimal som denne: 3, 072 (C [12] X 16 X 16) + 32 (2 X 16) + C [12]=3, 116
Igen er C lig med 12, fordi det er den 12. værdi, når du tæller fra nul.
Dette betyder, at 2F7+C2C virkelig er 759+3116, hvilket er lig med 3.875.
Selvom det er rart at vide, hvordan man gør dette manuelt, er det selvfølgelig meget nemmere at arbejde med hexadecimale værdier med en lommeregner eller konverter.
Hex-konvertere og regnemaskiner
En hexadecimal konverter er nyttig, hvis du vil oversætte hex til decimal eller decimal til hex, men ikke ønsker at gøre det manuelt. Indtastning af hex-værdien 7FF i en konverter vil f.eks. øjeblikkeligt fortælle dig, at den tilsvarende decimalværdi er 2.047.
Der er masser af online hex-konvertere, der er virkelig nemme at bruge, BinaryHex Converter, SubnetOnline.com, RapidTables og JP Tools er blot nogle få af dem. Nogle af disse websteder giver dig mulighed for ikke kun at konvertere hex til decimal (og omvendt), men også konvertere hex til og fra binær, oktal, ASCII og andre.
Hexadecimalregnere kan være lige så praktiske som en decimalsystemregner, men til brug med hexadecimale værdier. 7FF plus 7FF er f.eks. FFE.
Math Warehouse's hex-beregner understøtter kombination af talsystemer. Et eksempel ville være at tilføje en hex- og binær værdi sammen og derefter se resultatet i decimalformat. Den understøtter også oktal.
EasyCalculation.com er en endnu nemmere lommeregner at bruge. Det vil trække, dividere, addere og gange alle to hex-værdier, du giver det, og øjeblikkeligt vise alle svarene på samme side. Den viser også decimalækvivalenterne ved siden af hex svarene.
Flere oplysninger om hexadecimal
Ordet hexadecimal er en kombination af hexa (betyder 6) og decimal (10). Binær er base-2, oktal er base-8, og decimal er selvfølgelig base-10.
Hexadecimale værdier skrives nogle gange med præfikset 0x (0x2F7) eller med et sænket skrift (2F716), men det gør' t ændre værdien. I begge disse eksempler kan du beholde eller slette præfikset eller sænket skrift, og decimalværdien forbliver 759.
FAQ
Er hexadecimal et programmeringssprog?
Hexadecimal kode er teknisk set et programmeringssprog på lavt niveau, da programmører bruger det til at oversætte binær kode. Processoren kan faktisk ikke forstå hexadecimal kode. Det er kun en forkortelse for programmører.
Hvem opfandt hexadecimal notation?
Den svenskamerikanske ingeniør John Williams Nystrom udviklede det hexadecimale notationssystem i 1859. Også kendt som tonesystemet, Nystroms oprindelige forslag havde anvendelser inden for forskellige områder, herunder matematik og metrologi.
Hvad er en Steam-hex?
Hvis du bruger Steam-spiltjenesten, er din Steam-hexadecimal den samme som dit Steam-id, som er repræsenteret i hexadecimal.