Šestnajstiški številski sistem (osnova 16): definicija, primeri in uporaba

Šestnajstiški številski sistem (osnova 16), pogosto skrajšan v pogovornem žargonu, je številski sistem, sestavljen iz 16 simbolov (osnova 16). Standardni sistem, ki ga ljudje običajno uporabljamo, je desetiški (osnova 10) in uporablja deset simbolov: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Ker v šestnajstiškem sistemu potrebujemo še šest dodatnih vrednosti, se za njih uporabljajo črke iz angleške abecede, in sicer A, B, C, D, E in F. Tako šestnajstiški A = desetiški 10, šestnajstiški F = desetiški 15.

Zakaj uporabljamo šestnajstiški sistem

Ljudje večinoma uporabljamo desetiški sistem — verjetno zato, ker imamo deset prstov. Računalniki pa delujejo na osnovi dveh stanj (vklop/izklop), zato temeljijo na binarnem sistemu (0 in 1). Zelo dolge binarne nize je priročno združevati v večje skupine za lažje branje in zapisovanje. Ker je 16 = 2^4, je vsak šestnajstiški znak natanko predstavitev štirih bitov. Zato je šestnajstiški sistem pri računalništvu zelo uporaben: skrajša in poenostavi zapis binarnih podatkov.

Bit, nibble, bajt in povezava s šestnajstiškim

V računalniškem žargonu štirje biti tvorijo nibble (včasih nybble) — točno eno šestnajstiško števko, zapisana s simbolom 0–9 ali A–F. Dva nibla sestavljata bajt (8 bitov). Pri delu s podatki in naslovnimi prostori se zato pogosto uporablja šestnajstiško zapisovanje, saj en hex-znak predstavlja natanko 4 bite, dva hex-znaka pa 1 bajt.

Osnovna mapa hex simbolov

  • 0–9 predstavljajo vrednosti 0–9
  • A = 10, B = 11, C = 12, D = 13, E = 14, F = 15

Pretvorbe: kako računamo med sistemi

Osnovni postopek za pretvorbo šestnajstiškega števila v desetiško je množenje vsake cifre z ustrezno potenco 16 in seštevanje.

Primer: 1A316 = 1·16^2 + A·16^1 + 3·16^0 = 1·256 + 10·16 + 3·1 = 256 + 160 + 3 = 41910.

Za pretvorbo iz desetiškega v šestnajstiški sistem delimo število s 16 in zapisujemo ostanke:

Primer: 419 ÷ 16 = 26 ostanek 3 → prva (najmanj pomembna) hex-cifra = 3
26 ÷ 16 = 1 ostanek 10 → naslednja hex-cifra = A
1 ÷ 16 = 0 ostanek 1 → najvišja hex-cifra = 1
Rezultat: 41910 = 1A316.

Hex in binarno

Ker je 16 = 2^4, lahko za pretvorbo med hex in binarno enostavno razbijemo hex-cifre v grupe po štiri bite. Primer:

0x63 = 6 in 3 → 6 = 0110, 3 = 0011 → 0x63 = 0110 0011 (bin).

Obratno: binarni niz 11011011 razdelimo z desne v levo po štiri bite: 1101 1011 → 1101 = D, 1011 = B → hex = DB.

Notacije in sintaksa

Da bi se izognili zamenjavi z desetiškim ali osmeričnim zapisom, se za označevanje šestnajstiških števil uporabljajo različne konvencije:

  • Predpona 0x (npr. 0x63) je zelo razširjena v C/C++ in številnih drugih jezikih.
  • Pripona h (npr. 63h) se uporablja v nekaterih assemblerjih in dokumentaciji — upoštevajte, da v nekaterih assemblerjih števila, ki se začnejo z črko, zahtevajo predpono 0 (npr. 0ABh), da jih ne bi napačno interpretirali.
  • V nekaterih okoljih se uporablja tudi predpona $ (npr. $FF) ali zapis z znakom # pri barvnih kodah v spletnem oblikovanju (npr. #FF00AA).

Primeri uporabe

  • Prikaz barv v spletnem oblikovanju: barve so pogosto podane kot #RRGGBB v šestnajstiškem formatu (npr. #FF0000 = rdeča).
  • Pri prikazu pomnilniških naslovov in podatkov pri programiranju strojne opreme, v debuggiranju in pri razvoju operacijskih sistemov.
  • V kriptografiji in kodiranju, kjer so podatki pogosto predstavljeni kot nizi hex-znakov.
  • V formatu datotek in protokolih, kjer hex omogoča kompaktnejši in berljivejši zapis binarnih podatkov.

Dodatne opombe

Šestnajstiške črke so običajno zapisane z velikimi ali malimi črkami (A–F ali a–f); večina orodij ju obravnava enako. Ker vsak hex-znak predstavlja natančno štiri bite, je šestnajstiški zapis lahek za pretvorbo in interpretacijo binarnih struktur — zato je eden osnovnih in pogostih načinov predstavitve podatkov v računalništvu.

Za primer iz prvotnega besedila: zapisa 63h in 0x63 pomenita enako — število 63 v šestnajstiškem sistemu.

Šestnajstiške vrednosti

Šestnajstiški številski sistem je podoben osmiškemu številskemu sistemu (osnova 8), saj ga je mogoče enostavno primerjati z dvojiškim številskim sistemom. Šestnajstiški sistem uporablja štiri-bitno binarno kodiranje. To pomeni, da je vsaka številka v šestnajstiškem sistemu enaka štirim številkam v dvojiškem sistemu. Osmerokotni sistem uporablja tri-bitni binarni sistem.

V desetiškem sistemu je prva številka enica, naslednja številka levo je desetica, naslednja je stotica itd. V šestnajstiškem sistemu ima lahko vsaka številka 16 vrednosti in ne 10. To pomeni, da imajo števke mesto enice, mesto šestnajstice, naslednja pa je mesto 256. Tako je 1h = 1 decimalno, 10h = 16 decimalno in 100h = 256 decimalno.

Primeri vrednosti heksadecimalnih števil, pretvorjenih v binarno, oktalno in decimalno obliko.

Šesterokolesnik

Binarni

Oktal

Decimalna številka

0

0

0

0

1

1

1

1

2

10

2

2

3

11

3

3

4

100

4

4

5

101

5

5

6

110

6

6

7

111

7

7

8

1000

10

8

9

1001

11

9

A

1010

12

10

B

1011

13

11

C

1100

14

12

D

1101

15

13

E

1110

16

14

F

1111

17

15

10

1 0000

20

16

11

1 0001

21

17

24

10 0100

44

36

5E

101 1110

136

94

100

1 0000 0000

400

256

3E8

11 1110 1000

1750

1000

1000

1 0000 0000 0000

10000

4096

FACE

1111 1010 1100 1110

175316

64206

Pretvorba

Binarno v heksadecimalno

Pri spreminjanju števila iz dvojiškega v šestnajstiško se uporablja metoda razvrščanja v skupine. Binarno število se razdeli na skupine štirih številk, ki se začnejo z desne strani. Te skupine se nato pretvorijo v šestnajstiške številke, kot je prikazano v zgornji tabeli za šestnajstiška števila od 0 do F. Za spremembo iz šestnajstiške se izvede obraten postopek. Šestnajstiške številke se spremenijo v dvojiške, pri čemer se običajno odstrani razvrščanje v skupine.

Binarni

Skupine

Šesterokolesnik

01100101

0110

0101

65

010010110110

0100

1011

0110

4B6

1101011101011010

1101

0111

0101

1010

D75A

Kadar število bitov v binarnem številu ni večkratnik števila 4, je to število dopolnjeno z ničlami. Primeri:

  • binarni 110 = 0110, kar je 6 hex.
  • binarno 010010 = 00010010, kar je 12 šestnajstiških številk.

Šestnajstiško v decimalno

Številko iz šestnajstiške v decimalno obliko lahko pretvorite na dva običajna načina.

Prva metoda je pogostejša pri ročnem pretvarjanju:

  1. Za vsako šestnajstiško številko uporabite decimalno vrednost. Za 0-9 je enako, vendar A = 10, B = 11, C = 12, D = 13, E = 14 in F = 15.
  2. Shranite vsoto številk, pretvorjenih v vsakem koraku spodaj.
  3. Začnite z najmanj pomembno šestnajstiško številko. To je številka na desnem koncu. To bo prva postavka v vsoti.
  4. Vzemite drugo najmanj pomembno številko. Ta je poleg številke na desnem koncu. Decimalno vrednost te številke pomnožite s 16. To prištejte k vsoti.
  5. Enako naredite za tretjo najmanj pomembno številko, vendar jo pomnožite s 162 (to je 16 na kvadrat ali 256). Prištejte jo k vsoti.
  6. Nadaljujte za vsako števko in vsako mesto pomnožite z drugo močjo 16. (4096, 65536 itd.)

 

Lokacija

6

5

4

3

2

1

Vrednost

1048576 (165)

65536 (164)

4096 (163)

256 (162)

16(161)

1 (160)


Naslednja metoda se pogosteje uporablja pri pretvorbi števila v programski opremi. Pred začetkom ji ni treba vedeti, koliko števk ima število, in nikoli ne množi z več kot 16, vendar je na papirju videti daljša.

  1. Za vsako šestnajstiško številko uporabite decimalno vrednost. Za 0-9 je enako, vendar A = 10, B = 11, C = 12, D = 13, E = 14 in F = 15.
  2. Shranite vsoto številk, pretvorjenih v vsakem koraku spodaj.
  3. Začnite z najpomembnejšo števko (števka na skrajni levi). To je prva postavka v vsoti.
  4. Če obstaja še ena številka, pomnožite vsoto s 16 in dodajte decimalno vrednost naslednje številke.
  5. Zgornji korak ponavljajte, dokler ni več številk.


Primer: 5Fh in 3425h v decimalno število, metoda 1

 

5Fh v decimalno število

Šesterokolesnik

Decimalna številka

5Fh

=

( 5 x 16 )

+

( 15 x 1 )

=

80

+

15

5Fh

=

95

 

3425h v decimalno število

Šesterokolesnik

Decimalna številka

3425h

=

( 3 x 4096 )

+

( 4 x 256 )

+

( 2 x 16)

+

( 5 x 1 )

=

12288

+

1024

+

32

+

3425h

=

13349

Primer: 5Fh in 3425h v decimalno število, metoda 2

 

5Fh v decimalno število

Šesterokolesnik

Decimalna številka

vsota

=

5

=

(5 x 16) + 15

vsota

=

80 + 15 (ni več številk)

5Fh

=

95

 

3425h v decimalno število

Šesterokolesnik

Decimalna številka

vsota

=

3

=

(3 x 16) + 4 = 52

vsota

=

(52 x 16) + 2 = 834

vsota

=

(834 x 16) + 5 = 13349

3425h

=

13349

Sorodne strani

Vprašanja in odgovori

V: Kaj je šestnajstiški številski sistem?


O: Šestnajstiški številski sistem je številski sistem osnove 16, ki ga sestavlja 16 simbolov.

V: Katerih deset simbolov se uporablja v desetiškem številskem sistemu (osnova 10)?


O: Deset simbolov, ki se uporabljajo v desetiškem sistemu (osnova 10), je 0,1,2,3,4,5,6,7,8 in 9.

V: Katerih šest dodatnih simbolov uporablja šestnajstiški sistem?


O: Šestnajstiški sistem uporablja črke iz angleške abecede: A, B, C, D, E in F.

V: Koliko bitov vsebuje en bajt v sodobnih računalnikih?


O: V sodobnih računalnikih vsak bajt običajno vsebuje osem bitov.

V: Kako inženirji in računalničarji imenujejo štiribitne vrednosti?


O: Inženirji in računalničarji imenujejo štiribitne vrednosti nibble (včasih zapisano nybble).

V: Kako se lahko pri zapisovanju šestnajstiških števil izognete zamenjavi z drugimi številskimi sistemi?


O: Da bi se izognili zmedi z drugimi številskimi sistemi, lahko pri pisanju šestnajstmestnih številk dodate črko "h" za številko ali črko "0x" pred številko. Na primer 63h ali 0x63 pomeni 63 v šestnajstiškem sistemu.

AlegsaOnline.com - 2020 / 2025 - License CC3