wek-endovka: Počítačová paleontológia a číselné sústavy
3. časť wekových weekendových zamyslení
wek, 02.07.2010-00:00

Počítače sú totiž o číslach a počítaní, a to všetko vzniklo práve v čase, keď sa ľudia začali organizovať do iných než prvotných kmeňových vzťahov. Dovtedy boli počítacie potreby našich predkov veľmi jednoduché - obvykle si vystačili s "jeden", "dva" a "veľa". Ale akonáhle bolo treba spočítať otrokov či určiť, koľko ľudí je treba na obnovenie zavlažovacieho kanála po období záplav, začalo byť počítanie každodennou potrebou, a s ním aj spôsob zápisu čísiel (čo sa múdro volá "číselná sústava").

Na začiatku bol prirodzene najjednoduchší možný "adičný" zápis: jedna bodka alebo čiarka znamenalo 1, dve znamenali 2 atď. Toto však začne byť veľmi rýchlo nudné, a čo je horšie, aj sa človek ľahko pomýli. A tak vznikli pomôcky.

Každý snáď pozná, ako krčmár ráta pivá: po štyroch paličkách dá piatu krížom, a potom pri platení stačí už len zrátať pätice a pridať nepreškrtnutý zvyšok. Piatimi sa však násobí blbo, a tak krčmár vždy dve pätice zakrúžkuje: "Takže to máme tri krúžky po desať, potom škrtnutú päticu a ešte tri, takže to bude dvanásť osemdesiat (domáca úloha je určiť cenu piva). Samozrejme, keď niekto povedal "tridsať osem", tak už nekreslil a neškrtal samostatné čiarky, ale rovno nakreslil tri prázdne krúžky, jednu vodorovnú a tri zvislé čiarky.

Tento princíp (jednoduché spočítavanie plus zvláštne znaky pre 5, 10, 50, 100 atď.) sa dá ešte rôzne obmieňať, a používal sa aktívne až do raného stredoveku a pasívne sa používa dodnes skrz jeho pre nás najznámejšiu verziu, ktorou sú rímske čísla. Podobná, avšak ešte divokejšia sústava (s násobkami ako 2, 6 a 12) sa používala pre peňažné meny, napr. v Anglicku ešte pred dvomi desaťročiami bol podobný divoký vzťah medzi librou, šilingom a pencou. Aj v hovorovej reči v niektorých jazykoch sa používa podobný princíp, napríklad Francúzi namiesto 80 bežne povedia niečo ako "štyri dvadsať".

Mechanická pomôcka abakus (u nás známa ako školské počítadlo) je vlastne tiež založené na takomto princípe. A aj keď sa dá vypracovať algoritmus, ktorým sa dá na abakuse násobiť a deliť, ba dokonca aj numericky odmocňovať [1], automatický počítací stroj na tomto princípe by bol mimoriadne zložitý a nepraktický.

Na veľké čísla a zlomky je tento princíp jednoducho nevhodný, naviac sa v takejto sústave aj dosť zle vykonáva sčítanie a odčítanie, nehovoriac o násobení a delení. A tak múdre hlavy vymysleli pozičné číselné sústavy (že čo to je, sa dnes vyučuje na základnej škole, a tak predpokladám že čitateľom uZ nemusím vysvetľovať). S pozičnými číselnými sústavami súvisí aj pojem nula a jej niekoľko rôznych interpretácií (ako číslo, ako číslica, len ako "prázdne miesto pri zápise"), záporné čísla a pozičný zápis zlomkov (t.j. "desatinné" čísla), ale týmito detailami sa teraz nebudeme zaoberať.

V dejinách ľudstva boli pozičné sústavy vynájdené niekoľkokrát nezávisle od seba. Prirodzene sa očakáva, že základom takejto sústavy bude číslo 5 alebo 10, ale kupodivu už pomerne raná babylonská sústava mala náročný základ 60 (tzv. hexagesimálna sústava; používala sa v astronómii, a tak predpokladám, že ju v bežnom živote nepoužívali, ale neskúmal som to bližšie). Aby nebolo potrebné používať 60 rôznych číslic(*), jednotlivé "číslice" sa vlastne zapisovali v nepozičnej sústave nie nepodobnej rímskym číslam (čo jednak ukazuje zložitosť). Podobne to bolo aj s pomerne známou mayskou dvadsiatkovou (vigesimálnou) sústavou, kde sa ten "interný" zápis "číslic" dá ľahko aj predstaviť (0-4 bodky predstavovali jednotlivé prsty; k tomu 0-3 čiary predstavovali celé pätice t.j. celé "dlane" - buď rátali vždy dvaja, alebo používali aj nohy ).

Známe sú aj úplne kuriózne základy pozičných sústav, napr. 12, z
čoho nám zostal pojem "tucet" a dänikenovské úvahy o nadľuďoch so šiestimi prstami na každej ruke. Aj z k nej príbuznej šesťdesiatkovej sústavy nám ostal menej používaný pojem "kopa" (a samozrejme aj "astronomické aplikácie": spôsob počítania času a uhlov).

Problémy s nedostatkom číslic poznáme aj z programovania: keďže naša indicko-arabská desiatková sústava používa len 10 číslic, bolo si treba pre šestnástkovú sústavu vypomôcť písmenami. A týmto sme sa skokom preniesli do novoveku a k skutočným počítačom. Hovoriť o dvojkovej sústave, praktických dôsledkoch prevodu medzi dvojkovou a desiatkovou sústavou a súvisiacom používaní BCD kódovania, je na stránkach uZ nosením dreva do lesa, a tak v tejto súvislosti spomeňme už len vymierajúcu exotiku, a to osmičkovú (oktálnu) sústavu. Pochádza z doby, keď nebolo neobvyklé u počítačov mať šírku slova v násobkoch 6 (12, 24, 36 či 48 - pozri trebárs diskusiu k nedávnemu víkendovému rozprávaniu o Johnovi Backusovi) , a tak sa 6-bitová "slabika" (ktorá mohla obsahovať napr. jedno písmeno textu) sa dala zapísať dvojciferným osmičkovým číslom. Zostal nám z tejto éry spôsob zápisu atribútov súborov v UNIXe, a "léčka na nováčky" v jazyku C, kde číslo začínajúce číslicou 0 je (pre začiatočníkov prekvapujúco) interpretované ako oktálne číslo.

Samozrejme matematici majú nutkanie aj v takej jednoduchej a základnej veci ako je pozičná číselná sústava nachádzať príležitosti na experimentovanie a rôzne zvrátenosti, a tak záujemcovia o túto tematiku si môžu cvične skúsiť rôzne operácie a prevody v sústavách so záporným základom, alebo trebárs v trojkovej "vyváženej" sústave (kde sa používajú číslice -1, 0, 1), ktorá však kupodivu zažila aj reálnu aplikáciu v podobe sovietskeho počítača Setun.


Pekný víkend!


wek

----

(*) Predpokladám, že čitateľom uZ nemusím vysvetľovať rozdiel medzi pojmami "číslo" a "číslica"; bohužiaľ však, stretol som sa s ich zámenou nielen v detských encyklopedických knižkách, ale aj v učebniciach...

[1]To nemyslíte vážne, pán Feynman![/link], kap. "Šťastné čísla"



Diskusia k článku

<- 2. časť
4. časť -->



tento článok je z mikroZONE
( https://www.mikrozone.sk/pluginy/content/content.php?content.65 )