Pri komunikácii musíme často riešiť úlohu, ako zapísať (Čiže zakódovať) informáciu tak, aby sa mohia úspešne preniesť k adresátovi. Niekedy si táto úloha vyžaduje aj to, aby prenášanej informácii nerozumel nikto iný než jej adresát. Vtedy hovoríme o špeciálnom kódovaní a dekódovaní - o šifrovaní a dešifrovaní.
Ukážme si jeden vtipný a účinný postup na šifrovanie a dešifrovanie textu. Na kúsok papiera nakreslime 64 Šachových políčok a vyslrihnimc z nich 16 štvorčekov podľa ľavej časti obrázka. Takáto šifrovacia pomôcka sa volá sieťka. Vezmime potom čistý list papiera, položme naň sieťku jednotkou hore a poznačme si jej obrys. Cez vystrihnuté štvorčeky v sieťke napi Sme na papier prvých 16 znakov správy, ktorú chceme zašifrovať. Potom sieťku namieste otočme v smere hodinových ručičiek o 90 stupňov - uvidíme ďalších 16 prázdnych políčok. Napííme ceznenasledujúcieh 16 znakov správy. Potom opäť otočme o 90 stupňov a postup zopakujme. A ešte raz - výsledkom bude tabuľka 64 znakov, ktorá sa bez takej istej sieťky prakticky nedá prečítať. Ak ju ale máme, je to úplne jednoduché.
Dešifrovať správu bez takejto sieťky je naozaj veľmi ťažké. Veď pre rovnakú tabuľku 64 znakov existuje niekoľko miliónov rôznych sieťok.
Kódy
Cieľom kódovania je, aby sme mohli prenášať informáciu. Nie vždy však ide o utajenie. Často sa musíme prispôsobiť možnostiam technického zariadenia (preto vznikla napr. Morseova abeceda ako jazyk pre telegraf), alebo možnostiam ľudí zapojených do komunikácie (preto vzniklo Braillovo písmo pre nevidiacich).
Kódovanie informácie je ľubovoľná, vopred dohodnutá a všeobecne známa množina pravidiel, ktorá dovoľuje informáciu vyjadriť tak, aby sa dala uchovať, alebo šíriť. Kódovaniu sa budeme v tejto kapitole venovať podrobnejšie - budeme skúmať, ako sa rôzne typy informácií kódujú (zapisujú) v počítači.
Binárny kód. Bit
Počítače používajú zvláštny spôsob kódovania informácií - binárny kód. Sú to postupnosti dvoch znakov - 0 a 1. Že sa takto dá kódovať text, dokazuje napr. Morseova abeceda, ktorá na kódovanie písmen používa tiež iba dva znaky (ale na oddelenie slov používa tretí znak - medzeru).
Pamäť počítača si môžeme predstaviť ako milióny miniatúrnych prepínačov, z klorých každý je buď v ľavej polohe (pre znak 0) alebo v pravej polohe (pre znak 1). Dlhé postupnosti prepínačov predstavujú rôzne informácie. Ich spracúvanie sa vykonáva prepínaním hodnôt podľa určitých pravidiel. Každý „prepínač" predstavuje najmenšiu jednotku binárneho kódu a nazýva sa bit (binary digiť). Informácie zapísané v binárnom kóde sa nazývajú digitálne informácie.
Morseova abeceda - morzeovka
Samuel Morse ju vyvinul v roku 1838 ako spôsob kódovania správ pre telegraf. Každému písmenu a číslici zodpovedá séria bodiek a čiarok. Pre niektoré písmená má séria jedinú bodku či čiarku, pre iné aj tri alebo štyri. Poznáte kód pre volanie SOS?
Braillovo písmo
Louis Braitle sa narodil neďaleko Paríža v roku 1809. Ako štvorročný prišiel o zrak. Nemohol pokračovať v štúdiu na obyčajnej škole, pretože už nedokázal čítať, ani písať. Ako desaťročný začal navštevovať školu pre nevidiacich v Paríži, kde sa naučil viazať košíky a papuče. Tu sa stretol s vynálezom noínéhn písania Charlesa Barbiera, ktorý používal 12 vystupujúcich bodov - ich kombinácie určovali rôzne znaky. Braille tento vynález zjednodušil na 6 bodov. Umožnil nevidiacim písať aj čítať. V roku 1827 vydali v jeho písme prvú knihu.
V tomto a ďalších článkoch 2. kapitoly sa zamyslíme nad tým, ako použiť binárny kód na zápis rôznych druhov informácií v počítači, a to čísel, textov, obrázkov, videa a zvukov. Keď uvažujeme o zápise čísel, bežne máme na mysli Čísla z každodenného života, teda čísla vyjadrené v desiatkovej pozičnej sústave, ktoré:
• používajú cifry od nuly do deväť - leda 0,1,2,..., 9,
• využívajú pozičný spôsob zápisu. Napr. v čísle 132 stojí cifra 3 na pozícii desia
tok, preto vyjadruje hodnotu tri desiatky - teda tridsať. V čísle 325 stojí cifra 3 na
pozícii stoviek, prelo vyjadruje hodnotu tri stovky-teda tristo. Skutočnú hodnotu
každej cifry v čísle určuje to, či stojí na pozícii jednotiek alebo desiatok alebo
stoviek atď. Tieto kľúčové čísla sa nazývajú pozičné hodnoty a sprava doľava sú
(o mocniny Čísla 10, teda 10° (číže jedna), 101 (čiže desať), 10* (čiže sto), 103
(čiže tisíc)... atď.
Napr. číslo 3 926 je súčtom 3 000 + 900 + 20 + 6. teda 3-krát pozičná hodnota 1 000 plus 9-krát pozičná hodnota 100 plus 2-krát pozičná hodnota 10 100 10 1 plus 6-krát pozičná hodnota 1.
Zmeňme teraz základnú hodnotu 10 na číslo 2 a uvažujme o tom, čo je dvoj ková pozičná sústava:
• používa cifry od nula do jeden- teda iba 0 al,
• používa pozičný spôsob zápisu, ale pozičnými hodnotami sú mocniny Čísla 2,
teda sprava doľava 2° (Čiže 1), 21 (čiže 2), 22 (čiže 4), 23 (čiže 8)... atď.
2046 1024 512 256 128
Napríklad dvojkové číslo 110 je 1-krát pozičná hodnota 22 plus l-krát pozičná hodnota 21 plus O-krát pozičná hodnota 2°, teda 1.4 + 1.2 + 0.1 = 6. Číslo 110 v dvojkovej sústave preto zodpovedá číslu 6 v desiatkovej sústave. Tento fakt zapíšeme takto: 110;= 610.
Konštruktéri počítačov skúmali, aký zápis informácii je najvhodnejäi pre počítač. Tak sa dostali k binárnemu kódu, v ktorom sa čísla reprezentujú pomocou dvojkovej sústavy. Dôvod je jednoduchý: takýto zápis je pre súčasné počítače najjednoduchší a najspoľahlivejší,
Binárny kód a dvojková sústava tvoria most medzi informáciou a elektronickými obvodmi počítača. Dva znaky binárneho kódu 1 a 0 si môžeme predstaviť ako dve polohy malého prepínača (obvodu). Týmto dvom možnostiam hovoríme stavy obvodu.
Veľa javov v prírode okolo nás sa nachádza v jednom z dvoch možných stavov; žiarovka je buď zapnutá, alebo vypnutá, vodovodný kohútik je buď zavretý, alebo otvorený, výťah je buď v pohybe, alebo stojí.
V dvojkovej sústave je vyjadrenie čísla pomocou pozičných hodnôt v niečom ľahšie a v niečom ťažšie ako v desiatkovej sústave. Ťažšie je v tom, že s dvojkovými číslami nevieme lak ľahko počítať spamäti ako s desiatkovými. Ľahšie je zasa v tomto: Keďže dvojková sústava používa iba cifry 0 a 1, každá pozičná hodnota prispeje do celkovej hodnoty buď iba nulou (čiže ničím) alebo práve touto pozičnou hodnotou.
Napr. číslo 1111010101102 je
2 04B > 1 024 + 512 + 256 + 64 + 16 + 4 + 2 = 3 926,0
Prevod desiatkových čísel na dvojkové čísla
Vezmime ľubovoľné desiatkové číslo (celé a kladné) a hľadajme jeho vyjadrenie v dvojkovej sústave. Využijeme na to skutočnosť, že každé desiatkové číslo je buď párne, alebo nepárne. Napr. 30 je 15 . 2 so zvyškom 0a31jel5.2 so zvyškom 1:
30 = 15 .2+ 0
31 = 15.2+ 1
Ak ďalej prevedieme do dvojkovej sústavy číslo 15 a za výsledok pripíšeme 0, dostaneme dvojkový zápis párneho čísla 30. Ak za dvojkový zápis čísla 15 pripíšeme 1, dostaneme dvojkový zápis nepárneho čísla 31.
3010=11110a
Desiatkové číslo teda budeme postupne deliť dvoma a výsledok získanie tak, že budeme sprava doľava spisovať zvyšky po tomto delení - teda cifry 0 alebo 1.
Konätruktéri počítačov skúmali, aký zápis informácii je najvhodnejäi pre počítač. Tak sa dostali k binárnemu kódu, v ktorom sa čísla reprezentujú pomocou dvojkovej sústavy. Dôvod je jednoduchý: takýto zápis je pre súčasné počítače najjednoduchší a najspoľahlivejší,
Binárny kód a dvojková sústava tvoria most medzi informáciou a elektronickými obvodmi počítača. Dva znaky binárneho kódu 1 a 0 si môžeme predstaviť ako dve polohy malého prepínača (obvodu). Týmto dvom možnostiam hovoríme stavy obvodu.
Veľa javov v prírode okolo nás sa nachádza v jednom z dvoch možných stavov; žiarovka je buď zapnutá, alebo vypnutá, vodovodný kohútik je buď zavretý, alebo otvorený, výťah je buď v pohybe, alebo stojí.
V dvojkovej sústave je vyjadrenie čísla pomocou pozičných hodnôt v niečom ľahšie a v niečom ťažšie ako v desiatkovej sústave. Ťažšie je v lom, že s dvojko-vými číslami nevieme lak ľahko počítať spamäti ako s desiatkovými. Ľahšie je zasa v tomto: Keďže dvojková sústava používa iba cifry 0 a 1, každá pozičná hodnota prispeje do celkovej hodnoty buď iba nulou (čiž.e ničím) alebo práve touto pozičnou hodnotou.
Napr. číslo 1111010101102 je
2 04B > 1 024 H 512 + 256 + 64 +■
+ 16 + 4 + 2 = 3 926,0
Pripísať /.a desiatkové číslo nulu, znamená vynásobiť ho desiatimi. Pripísať za dvojkové číslo nulu, znamená vynásobiť ho dvoma.
Namiesto dvojková pozičná sústava bežne hovoríme a píšeme iba dvojková sústava.
Šifry
Šifrovanie sa používa všade tam, kde treba utajiť obsah komunikácie. Rôznych metód na tajné šifrovanie (a protimelód na dešifrovanie) existuje veľmi veľa. Vyvíjali sa od čias starovekého Egypta. Dnes dosiahli neuveriteľnú úroveň a dôležitosť. Prečo? Samozrejme, kvôli počítačom a komunikácii na Internete. Veď čoraz častejšie zverujeme počítačom súkromné informácie, napr. rodné číslo, presnú adresu bydliska, či číslo nášho účtu v banke a pod. Určite by sme si neželali, aby takúto informáciu prečítal aj niekto nepovolaný.