Det hexadecimala talsystemet, även kallatbas-16eller ibland barahex, är ett talsystem som använder 16 unika symboler för att representera ett visst värde. Dessa symboler är 0-9 och A-F.
Siffersystemet som vi använder i det dagliga livet kallas fördecimal, eller bas-10-systemet, och använder de 10 symbolerna från 0 till 9 för att representera ett värde.
Jason Gayman / E+ / Getty Images
Var och varför används hexadecimal?
De flesta felkoder och andra värden som används inuti en dator är representerade i hexadecimalt format. Till exempel, STOPP-koder som visas på en Blue Screen of Death är alltid i hexadecimalt format.
Programmerare använder hex eftersom deras värden är kortare än de skulle vara om de visas med decimaler, ochmycketkortare än i binär, som bara använder 0 och 1.
Till exempel är följande värden likvärdiga:
- Är hexadecimal ett programmeringsspråk?
Hexadecimal kod är tekniskt sett ett programmeringsspråk på låg nivå eftersom programmerare använder det för att översätta binär kod. Processorn kan faktiskt inte förstå hexadecimal kod. Det är bara en förkortning för programmerare.
- Vem uppfann hexadecimal notation?
Den svenske amerikanska ingenjören John Williams Nystrom utvecklade det hexadecimala notationssystemet 1859. Även känt som tonsystemet, Nystroms ursprungliga förslag hade tillämpningar inom olika områden, inklusive matematik och metrologi.
- Vad är en Steam hex?
Om du använder Steam speltjänst , din Steam-hexadecimal är densamma som ditt Steam-ID, vilket representeras i hexadecimalt.
En annan plats hexadecimal används är som en HTML färg kodför att uttrycka en specifik färg. En webbdesigner skulle använda hex-värdet FF0000 för att definiera den röda färgen. Detta är uppdelat somFF,00,00,som definierar mängden röda, gröna och blå färger som ska användas (RRGGBB); 255 röd, 0 grön och 0 blå i detta exempel.
Hexadecimala värden upp till 255 kan uttryckas i två siffror, och HTML-färgkoder använder tre uppsättningar med två siffror, vilket innebär att det finns över 16 miljoner (255 x 255 x 255) möjliga färger som kan uttryckas i hexadecimalt format, vilket sparar mycket utrymme kontra att uttrycka dem i ett annat format som decimal.
Ja, binärt är mycket enklare på vissa sätt, men det är svårare läs binär än hex.
Hur man räknar i hexadecimal
Att räkna i hexadecimalt format är enkelt, så länge du kommer ihåg att det finns 16 tecken som utgör varje uppsättning siffror.
I decimalformat vet vi alla att vi räknar så här:
0,1,2,3,4,5,6,7,8,9,10,11,12,13,... lägga till en 1:a innan du påbörjar uppsättningen med 10 siffror igen (d.v.s. siffran 10) .
I hexadecimalt format räknar vi dock så här, inklusive alla 16 siffror:
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,10,11,12,13... igen, lägg till en 1 innan du börjar 16 nummer satt om igen.
Här är några exempel på några knepiga hexadecimala 'övergångar' som du kan ha nytta av:
Hur man manuellt konverterar hexadecimala värden
Att lägga till hex-värden är väldigt enkelt och görs faktiskt på ett mycket liknande sätt som att räkna tal i decimalsystemet.
Ett vanligt matematiskt problem som 14+12 kan normalt göras utan att skriva ner något. De flesta av oss kan göra det i våra huvuden – det är 26. Här är ett användbart sätt att se på det:
14 delas upp i 10 och 4 (10+4=14), medan 12 är förenklat som 10 och 2 (10+2=12). Läggs samman är 10, 4, 10 och 2 lika med 26.
När tre siffror introduceras, som 123, vet vi att vi måste titta på alla tre ställena för att förstå vad de egentligen betyder.
3:an står för sig själv eftersom det är den sista siffran. Ta bort de två första, och 3 är fortfarande 3. 2:an multipliceras med 10 eftersom det är den andra siffran i talet, precis som i det första exemplet. Återigen, ta bort 1:an från denna 123:a, och du har 23, vilket är 20+3. Den tredje siffran från höger (1:an) tas gånger 10, två gånger (gånger 100). Det betyder att 123 förvandlas till 100+20+3, eller 123.
Här är två andra sätt att se på det:
...( N X 102) + ( N X 101)+ ( N X 100)
eller...
...( N X 10 X 10) + ( N X 10) + N
Sätt in varje siffra på rätt plats i formeln från ovan för att förvandla 123 till: 100 ( 1 X 10 X 10) + 20 ( 2 X 10) + 3 , eller 100 + 20 + 3, vilket är 123.
Detsamma gäller om talet är i tusental, som 1 234. 1:an är verkligen 1 X 10 X 10 X 10, vilket gör den på tusendels plats, 2 i hundradelar och så vidare.
Hexadecimal görs på exakt samma sätt, men använder 16 istället för 10 eftersom det är ett bas-16-system istället för bas-10:
...( N X 163) + ( N X 162) + ( N X 161)+ ( N X 160)
Säg till exempel att vi har problemet 2F7+C2C, och vi vill veta decimalvärdet för svaret. Du måste först konvertera de hexadecimala siffrorna till decimaler och sedan helt enkelt lägga till siffrorna som du skulle göra med de två exemplen ovan.
Återigen, noll till nio i decimal och hex är exakt samma, medan siffrorna 10 till 15 representeras som bokstäverna A till F.
Den första siffran längst till höger om värdet 2F7 står för sig själv, som i decimalsystemet, och blir 7. Nästa siffra till vänster måste multipliceras med 16, ungefär som det andra talet från 123 ( 2) ovan behövde multipliceras med 10 (2 X 10) för att få talet 20. Slutligen måste det tredje talet från höger multipliceras med 16, två gånger (vilket är 256), som ett decimalbaserat tal behöver ska multipliceras med 10, två gånger (eller 100), när den har tre siffror.
Därför bryta upp 2F7 i vårt problem gör 512 ( 2 X 16 X 16) + 240 ( F [15] X 16) + 7 , vilket kommer till 759. Som du kan se är F 15 på grund av dess position i hexsekvensen (seHur man räknar i hexadecimalovan) – det är den allra sista siffran av de 16 möjliga.
C2C konverteras till decimal så här: 3 072 ( C [12] X 16 X 16) + 32 ( 2 X 16) + C [12] = 3 116
Återigen är C lika med 12 eftersom det är det 12:e värdet när du räknar från noll.
Detta betyder att 2F7+C2C verkligen är 759+3116, vilket är lika med 3 875.
Även om det är trevligt att veta hur man gör detta manuellt, är det naturligtvis mycket lättare att arbeta med hexadecimala värden med en miniräknare eller omvandlare.
Hexomvandlare och miniräknare
En hexadecimal omvandlare är användbar om du vill översätta hex till decimal, eller decimal till hex, utan att göra det manuellt. Om du till exempel anger 7FF i en omvandlare kommer det omedelbart att berätta att motsvarande decimalvärde är 2 047.
Det finns massor av hex-omvandlare online som är väldigt enkla att använda, BinaryHex Converter , SubnetOnline.com , RapidTables , och JP Verktyg är bara några av dem. Vissa av dessa webbplatser låter dig konvertera inte bara hex till decimal (och vice versa) utan också konvertera hex till och från binär, oktal, ASCII och andra.
Hexadecimalräknare kan vara lika praktiska som en decimalsystemräknare, men för användning med hexadecimala värden. 7FF plus 7FF, till exempel, är FFE.
Math Warehouse's hex-kalkylatorn stöder att kombinera talsystem. Ett exempel skulle vara att lägga till ett hexadecimalt och binärt värde tillsammans och sedan visa resultatet i decimalformat. Den stöder även oktal.
EasyCalculation.com är en ännu enklare miniräknare att använda. Den subtraherar, dividerar, adderar och multiplicerar alla två hexadecimala värden du ger den och visar omedelbart alla svar på samma sida. Den visar också decimalekvivalenterna bredvid hex-svaren.
Mer information om hexadecimal
Ordethexadecimalär en kombination avhexa(betyder 6) ochdecimal(10). Binär är bas-2, oktal är bas-8, och decimal är naturligtvis bas-10.
hur man sparar en Twitter-gif
Hexadecimala värden skrivs ibland med prefixet 0x (0x2F7) eller med en nedsänkt (2F716), men det ändrar inte värdet. I båda dessa exempel kan du behålla eller ta bort prefixet eller nedsänkningen och decimalvärdet förblir 759.
De Windows-registret är en plats där du kan stöta på hexadecimala värden på en dator. Närmare bestämt när man arbetar med DWORD- och QWORD-registervärden .
FAQ