Hexadecimalt till decimalt

För att konvertera hexadecimala tal till decimala finns två alternativ:

  • Konvertera till binärt och binärt till decimalt
  • Konvertera direkt till decimalt

Exempel 1 – Konvertera D1CE16 till decimalt

D1CE16 =  1101 0001 1100 11102 =

215
214 213 212 211 210 29 28 27 26 25 24 23 22 21 20
1 1 0 1 0 0 0 1 1 1 0 0 1 1 1 0
  • I tabellen ovan räknas ut alla potenser som pekas med en etta:
  • D1CE16 = 1 x 215 + 1 x 214 + 1 x 212 + 1 x 28 + 1 x 27 + 1 x 26 + 1 x 23 + 1 x 22 + 1 x 21             
  • D1CE16 = 32768 + 16384 + 4096 + 256 + 128 + 64 + 8 + 4 + 2 = 5371010
  • Det kan också räknas ut så här:
  • 1110 = 14 = E
  • 1100 = 12 = C 
  • 0001 = 1
  • 1101 = 13 = D
  • D1CE16
  • D1CE16 = 13 x 163 + 1 x 162 + 12 X 161 + 14 x 160 = 13 x 4096 + 256 + 192 + 14 = 53248 + 462 = 5371010  

Hittills har jag haft heltal i alla exempel, men hexadecimalt talsystem har också decimaltal till exempel 2E6,A3 men kommatecknet kan tolkas som att det separerar två tal 2E6 och A3 därför föredrar jag att använda punkt istället.

Innan jag går vidare studera tabellen nedan: 

Decimalt 104 103 102 101 100 .  10-1 10-2 10-3 10-4 10-5
  1/10 1/100 1/1000 1/10000 1/100000
10000 1000 100 10 1 0.1 0.01 0.001 0.0001 0.00001
Binärt 24 23 22 21 20 . 2-1 2-2 2-3 2-4 2-5
  1/2 1/4 1/8 1/16 1/32
16 8 4 2 1 0.5 0.25 0.125 0.0625 0.03125
Hexadecimalt 164 163 162 161 C160 . 16-1 16-2 16-3 16-4 16-5
1/161 1/162 1/163 1/164 1/165
65536 4096 256 16 1 0.0625 0.00390625

Exempel 2 – Konvertera 2E6.A3 till decimaltal.

  • 2E6.A3 = (2 x 162) + (14 x 161) + (6 x 160) . (10 x 16-1) + (3 x 16-2) =
  • (2 x 256) + (14 x 16) + (6 x 1) . (10 x 0.0625) + (3 x 0.00390625) =
  • (512 + 224 + 6). + (0.625 + 0.01171875) = 742.63671875 

Det kunde beräknas på enklare sätt:

2E6.A3 = (2 x 16 x 16) + (14 x 16) + 6 + (10/16) + (3/(16 x 16) = 742.63671875

Man kan använda också en tabell så det förenklar beräkningar:

Exempel 3 – Konvertera 112816 till decimalt:

Operation Resultat Anteckningar
8 x 160 8 Starta från höger och med bas 16 samt exponenten 0
2 x 161 32 Öka exponenten med 1 varje gång
1 x 162 256
1 x 163 4096
Svar 4392

Exempel 4 – Konvertera DE1.0A0 till decimalt:

Operation Resultat Anteckningar
0 x 16-3 0 Starta från höger och med bas 16 samt exponenten -3
10 x 16-2 0.0390625 Öka exponenten med 1 varje gång
0 x 16-1 0
. .
1 x 160 1
14 x 161 224
13 x 162 3328
Svar 3553.0390625

Exempel 5 – Konvertera 4D86B16 till decimalt

Operation Resultat Anteckningar
11  x 160 11
6 x 161 96
8 x 162 2048
13 x 163 53248
4 x 164 262144
Svar 317547