Šestnáctková soustava

Šestnáctková číselná soustava, často zkracovaná na "kalab", je číselná soustava tvořená 16 symboly (základ 16). Standardní číselná soustava se nazývá desítková (základ 10) a používá deset symbolů: 0,1,2,3,4,5,6,7,8,9. Šestnáctková soustava používá desítkové číslice a šest dalších symbolů. Neexistují žádné číselné symboly, které by reprezentovaly hodnoty větší než devět, proto se používají písmena převzatá z anglické abecedy, konkrétně A, B, C, D, E a F. Šestnáctkové A = desetinné číslo 10 a šestnáctkové F = desetinné číslo 15.

Lidé většinou používají desítkovou soustavu. Je to pravděpodobně proto, že lidé mají na rukou deset prstů. Počítače však mají pouze zapnuto a vypnuto, čemuž se říká binární číslice (zkráceně bit). Binární číslo je jen řetězec nul a jedniček: Například 11011011. Inženýři, kteří pracují s počítači, mají tendenci bity z pohodlných důvodů seskupovat. V dřívějších dobách, například v 60. letech 20. století, seskupovali po třech bitech (podobně jako se velká desítková čísla seskupují po třech, například číslo 123 456 789). Tři bity, z nichž každý je zapnutý nebo vypnutý, mohou reprezentovat osm čísel od 0 do 7: 000 = 0; 001 = 1; 010 = 2; 011 = 3; 100 = 4; 101 = 5; 110 = 6 a 111 = 7. Tomu se říká osmičková soustava.

Jak se počítače zvětšovaly, bylo výhodnější seskupovat bity po čtyřech místo po třech. Tím se zdvojnásobil počet čísel, která by symbol reprezentoval; místo osmi může mít 16 hodnot. Hex = 6 a Decimal = 10, proto se nazývá hexadecimální. V počítačovém žargonu tvoří čtyři bity nibble (někdy se píše nybble). Nibble je jedna šestnáctková číslice zapsaná pomocí symbolu 0-9 nebo A-F. Dva nibble tvoří byte (8 bitů). Většina počítačových operací používá byte nebo jeho násobek (16 bitů, 24, 32, 64 atd.). Zápis těchto velkých binárních čísel usnadňuje šestnáctková soustava.

Aby se předešlo záměně s desítkovou, osmičkovou nebo jinou číselnou soustavou, zapisují se někdy šestnáctková čísla s písmenem "h" za číslem nebo s písmenem "0x" před číslem. Například 63h a 0x63 znamená 63 v šestnáctkové soustavě.

Šestnáctkové hodnoty

Šestnáctková číselná soustava je podobná osmičkové (základ 8), protože ji lze snadno porovnat s dvojkovou číselnou soustavou. Šestnáctková soustava používá čtyřbitové binární kódování. To znamená, že každá číslice v šestnáctkové soustavě je stejná jako čtyři číslice ve dvojkové soustavě. Osmibitová soustava používá tříbitovou binární soustavu.

V desítkové soustavě je první číslice na místě jedničky, další číslice vlevo je na místě desítky, další je na místě stovky atd. V šestnáctkové soustavě může mít každá číslice 16 hodnot, nikoliv 10. To znamená, že číslice mají místo jedničky, místo šestnáctky a další číslice je místo 256. Takže 1h = 1 desetinné číslo, 10h = 16 desetinných čísel a 100h = 256 desetinných čísel.

Příklady hodnot hexadecimálních čísel převedených do binární, osmičkové a desítkové soustavy.

Hex

Binární

Osmičkové

Desetinné číslo

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

Převod

Převod z dvojkové do šestnáctkové soustavy

Změna čísla z binárního na hexadecimální používá metodu seskupování. Binární číslo je rozděleno do skupin po čtyřech číslicích, které začínají zprava. Tyto skupiny se pak převedou na šestnáctkové číslice, jak je znázorněno v tabulce výše pro šestnáctková čísla 0 až F. Pro změnu z šestnáctkové soustavy se postupuje opačně. Každá šestnáctková číslice se změní na dvojkovou a seskupení se obvykle odstraní.

Binární

Seskupení

Hex

01100101

0110

0101

65

010010110110

0100

1011

0110

4B6

1101011101011010

1101

0111

0101

1010

D75A

Pokud počet bitů v binárním čísle není násobkem 4, je doplněn nulami, aby tomu tak bylo. Příklady:

  • binární 110 = 0110, což je 6 Hex.
  • binární 010010 = 00010010, což je 12 Hex.

Převod hexadecimální na desítkovou soustavu

Převod čísla z hexadecimální do desítkové soustavy se provádí dvěma běžnými způsoby.

První metoda se častěji používá při ručním převodu:

  1. Pro každou hexadecimální číslici použijte desítkovou hodnotu. Pro 0-9 je to stejné, ale A = 10, B = 11, C = 12, D = 13, E = 14 a F = 15.
  2. Zaznamenejte si součet čísel převedených v jednotlivých krocích níže.
  3. Začněte nejméně významnou hexadecimální číslicí. To je číslice na pravém konci. To bude první položka v součtu.
  4. Vezměte druhou nejméně významnou číslici. Ta je vedle číslice na pravém konci. Vynásobte desetinnou hodnotu této číslice číslem 16. Tuto hodnotu přičtěte k součtu.
  5. Totéž proveďte pro třetí nejméně významnou číslici, ale vynásobte ji číslem 162 (tj. 16 na druhou, tj. 256). Přičtěte ji k součtu.
  6. Pokračujte pro každou číslici a každé místo vynásobte další mocninou 16. (4096, 65536 atd.)

 

Umístění

6

5

4

3

2

1

Hodnota

1048576 (165)

65536 (164)

4096 (163)

256 (162)

16(161)

1 (160)


Další metoda se častěji používá při převodu čísla v softwaru. Nepotřebuje vědět, kolik číslic má číslo, než začne, a nikdy nevynásobí více než 16, ale na papíře vypadá delší.

  1. Pro každou hexadecimální číslici použijte desítkovou hodnotu. Pro 0-9 je to stejné, ale A = 10, B = 11, C = 12, D = 13, E = 14 a F = 15.
  2. Zaznamenejte si součet čísel převedených v jednotlivých krocích níže.
  3. Začněte nejvýznamnější číslicí (číslicí zcela vlevo). To je první položka v součtu.
  4. Pokud existuje další číslice, vynásobte součet číslem 16 a přičtěte desetinnou hodnotu další číslice.
  5. Výše uvedený krok opakujte, dokud nebudou k dispozici další číslice.


Příklad: 5Fh a 3425h na desetinné číslo, metoda 1

 

5Fh na desetinné číslo

Hex

Desetinné číslo

5Fh

=

( 5 x 16 )

+

( 15 x 1 )

=

80

+

15

5Fh

=

95

 

3425h na desetinné číslo

Hex

Desetinné číslo

3425h

=

( 3 x 4096 )

+

( 4 x 256 )

+

( 2 x 16)

+

( 5 x 1 )

=

12288

+

1024

+

32

+

3425h

=

13349

Příklad: 5Fh a 3425h na desetinné číslo, metoda 2

 

5Fh na desetinné číslo

Hex

Desetinné číslo

součet

=

5

=

(5 x 16) + 15

součet

=

80 + 15 (bez dalších číslic)

5Fh

=

95

 

3425h na desetinné číslo

Hex

Desetinné číslo

součet

=

3

=

(3 x 16) + 4 = 52

součet

=

(52 x 16) + 2 = 834

součet

=

(834 x 16) + 5 = 13349

3425h

=

13349

Související stránky

Otázky a odpovědi

Otázka: Co je to šestnáctková číselná soustava?


Odpověď: Šestnáctková číselná soustava je číselný systém o základu 16, který se skládá ze 16 symbolů.

Otázka: Jakých deset symbolů se používá v desítkové soustavě (základ 10)?


Odpověď: Deset symbolů používaných v desítkové soustavě (základ 10) je 0,1,2,3,4,5,6,7,8 a 9.

Otázka: Jakých šest dalších symbolů používá šestnáctková soustava?


A: Šestnáctková soustava používá písmena převzatá z anglické abecedy - A, B, C, D, E a F.

Otázka: Kolik bitů obsahuje jeden bajt v moderních počítačích?


Odpověď: V moderních počítačích obsahuje každý bajt obvykle osm bitů.

Otázka: Jak inženýři a počítačoví vědci nazývají čtyřbitové hodnoty?


Odpověď: Inženýři a počítačoví vědci označují čtyřbitové hodnoty jako nibble (někdy psáno nybble).

Otázka: Jak se při zápisu hexadecimálních čísel vyhnete záměně s jinými číselnými systémy?


Odpověď: Abyste se při zápisu šestnáctkových čísel vyhnuli záměně s jinými číslovacími systémy, můžete za číslo přidat písmeno "h" nebo před něj písmeno "0x". Například 63h nebo 0x63 znamená 63 v šestnáctkové soustavě.

AlegsaOnline.com - 2020 / 2023 - License CC3