Veronika Dropčová
veronika.dropcova(at)gmail.com

   nika.blog.matfyz.sk

Prevody z binárnej do hexadecimálnej a naopak

Najvyššie číslo, ktoré vieme v hexadecimálnej sústave zapísať jednou cifrou, je F (ktoré má hodnotu 15). Teda na to, aby sme najvyššie číslo zapísateľné jednou cifrou zapísali v dvojkovej sústave, potrebujeme 4 cifry (lebo F16 = 11112). A presne z tohto vychádza algoritmus na prevod z dvojkovej sústavy do šestnástkovej (a naopak), ktorý vynecháva prevod do desiatkovej sústavy.

Prevod z binárnej do hexadecimálnej sústavy

Majme číslo 1011100112.

 

Chceme ho previesť do hexadecimálnej sústavy. Ako na to? Rozdelíme si ho na štvorice bitov, pričom začíname sprava:

 

1-0111-0011

 

Vidíme, že prvá „štvorica“ je nekompletná, keďže je tam iba jedno číslo. Nevadí, je to totiž to isté, akoby tam bolo zapísané „0001“, čo by už štvorica bola.

 

Na to, aby sme mohli pokračovať, teraz potrebujeme vedieť, ako sa jednotlivé cifry v hexadecimálnej sústave zapisujú v binárnej sústave. Tak teda pomocná tabuľka (binárne čísla sú rovno zapísané na 4 bity, teda ak treba, tak sú na prvé pozície doplnené nuly):

hex 0 1 2 3 4 5 6 7 8 9 A B C D E F
bin 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

 

Teraz je to už jednoduché. Číslo 1-0111-00112, alebo ak chcete 0001-0111-00112 zodpovedá číslu 17316, pretože:

00012 = 116

01112 = 716

00112 = 316

 

Prevod z hexadecimálnej do binárnej sústavy

Na tento prevod budeme využívať tabuľku uvedenú vyššie. Dôležité je však zapamätať si, že každé číslo musíme zapísať na 4 bity (s výnimkou prvého – nuly na začiatku môžeme vynechať).

 

Tak teda majme číslo 2B5D16. Vieme, že:

 

216 = 00102

B16 = 10112

516 = 01012

D16 = 11012

 

2B5D16 = 00101011010111012, resp. 101011010111012, keďže nuly na začiatku môžeme vynechať.

 

Úlohy

  1. Preveďte nasledujúce čísla z binárnej sústavy do hexadecimálnej bez prevádzania do desiatkovej sústavy:
    1. 101111111012
    2. 10112
    3. 1110001010112
    4. 1100110011002
    5. 10101102
  2. Preveďte nasledujúce čísla z hexadecimálnej sústavy do binárnej (opäť bez prevádzania do decimálnej sústavy):
    1. ABC16
    2. 1D5E716
    3. 7F16
    4. EFFF16
    5. 903A16
  3. Ako by podľa vás fungoval prevod z dvojkovej do osmičkovej sústavy? A čo zo štvorkovej do dvojkovej sústavy?