Počítače nemyslia v desiatkovej sústave ako my — pracujú v binárnej sústave, ktorá pozná iba dve hodnoty: 0 a 1. Tieto hodnoty zodpovedajú fyzickým stavom elektronických obvodov: vypnutý (0) a zapnutý (1). Pochopenie binárneho systému je kľúčom k porozumeniu toho, ako počítače ukladajú a spracovávajú dáta.
Prečo počítače používajú binárnu sústavu
Elektronické obvody ľahko rozlíšia dva stavy — napätie je buď nízke alebo vysoké. Je oveľa spoľahlivejšie a lacnejšie navrhnúť obvody, ktoré pracujú s dvoma hodnotami, ako s desiatimi. Táto jednoduchosť umožňuje umiestniť miliardy tranzistorov na malý čip.
Jeden binárny znak (0 alebo 1) sa nazýva bit (binary digit). Osem bitov tvorí bajt. Bajt môže uchovávať 256 rôznych hodnôt (od 0 do 255).
Konverzia z desiatkovej do binárnej sústavy
Desiatočné číslo prevedieme do binárnej sústavy opakovaným delením číslom 2 a zaznamenávaním zvyškov — čítame ich od konca.
Príklad: Prevedieme číslo 13 do binárnej sústavy
13 / 2 = 6, zvysok 1
6 / 2 = 3, zvysok 0
3 / 2 = 1, zvysok 1
1 / 2 = 0, zvysok 1
Čítame zdola nahor: 1101
Výsledok: 13 (desiatková) = 1101 (binárna)
Konverzia z binárnej do desiatkovej sústavy
Každá pozícia v binárnom čísle má hodnotu mocniny čísla 2. Sčítame hodnoty pozícií, na ktorých stojí cifra 1.
Príklad: Prevedieme binárne číslo 1101
Pozícia: 3 2 1 0
Hodnota: 8 4 2 1
Cifra: 1 1 0 1
Sucet: 8 + 4 + 0 + 1 = 13
Výsledok: 1101 (binárna) = 13 (desiatková)
Bežné binárne hodnoty
| Desiatková | Binárna | Hexadecimálna |
|---|---|---|
| 0 | 0000 | 0 |
| 5 | 0101 | 5 |
| 10 | 1010 | A |
| 15 | 1111 | F |
| 255 | 11111111 | FF |
Hexadecimálna sústava (základ 16) sa v informatike používa ako skratka pre binárne čísla — každá hexadecimálna cifra zodpovedá presne 4 bitom. Preto farby v HTML zapisujeme ako napr. #FF5733.
Binárna aritmetika
V binárnej sústave sčítavame podobne ako v desiatkovej, ale prenos nastáva pri hodnote 2 (nie 10):
1011 (11)
+ 0110 ( 6)
------
10001 (17)
Procesor počítača vykonáva binárne sčítavanie miliardkrát za sekundu pomocou logických obvodov.
Cvičné príklady
Aká je desiatková hodnota binárneho čísla 1010?