Jedničky a nuly

Počítač počítá

Historicky se počítače nepoužívaly na porno a Fortnite ale na počítání pro vědecké či vojenské účely.

Procesory stále počítají a provádí obrovské množství matematických operací i při běžném používání, i když tyto operace nevidíš.

Už jen to, že sis načetl tuto stránku znamená, že tvůj procesor provedl nejspíš miliony matematických operací a ty nemusíš dělat vůbec nic. I kdybys něco chtěl dělat tak nic neuděláš, protože jseš omezenej retard.

  • Stránka se ti načetla přes zabezpečený kanál (HTTPS). Toto zabezpečení se provádí díky šifrování, které je z povahy matematické.
  • Tato stránka obsahuje hromadu grafických prvků. Každé písmeno, každý rám, odstavec, řádek, obrázek, projde přes tvůj procesor a vypočte se jeho pozice na tvém displeji tak, aby to bylo čitelné a viditelné.

Je to fakt hromada práce – ve výsledku z toho je odhadem několik milionů instrukcí pro procesor: jenže procesory fungují rychlostí 5 miliard instrukcí za vteřinu takže pár miliónů instrukcí je hotovejch ani ne za zlomek vteřiny. Proto se ti tato stránka načetla tak rychle.

Hry jako WoW jsou matematicky definované: na 2D obrazovku se ti neustále promítá 3D prostor — pro každý bod na obrazovce je třeba spočítat, jakou barvu má zrovna svítit.

A představ si, že i sledování porna zahrnuje spousta matematiky. Zkomprimovaná videa neobsahují úplný obraz v každém snímku (to by bylo nezkomprimované video) ale pouze nutné informace, ze kterých lze celý obraz rekonstruovat díky dopočítání rozdílu z předchozího obrazu. Určitě mi poděkuješ, až si na to při sledování porna vzpomeneš.

Dvojková soustava

Další „vrstva“ nebo „pohled“ který teď přidám je binární aritmetika.

  • Tam, kde není signál, tam je číslice 0
  • Tam, kde je signál, tam je číslice 1
Binární aritmetika je další vrstva nad signální vrstvou

Číslo 1 nebo 0 se v IT nazývá bit a umožňuje počítat ve dvojkové soustavě. To už zní možná dost šíleně, že jo. Co je do hajzlu dvojková soustava, ptáš se?

Je to jednoduchý. Pojď se mnou počítat na prstech jako v první třídě.

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10.

Kolik máš prstů? 10! Výborně! Tady máš bombónek! 🍬

Kolik obsahuje desítková soustava cifer (znak, který reprezentuje číslici)?
Také 10. Jsou to znaky: 0, 1, 2, 3, 4, 5, 6, 7, 8 a 9.

10 je číslo, které se skládá ze dvou cifer: 1 a 0.
6969 je číslo, které se sdkládá ze 4 cifer: 6, 9, 6 a 9.
A tak dále.

No a teď si představ, že máš jen jeden prst.
Nebo že nemáš vůbec ruce ale jsi mužského pohlaví.

Takže máš k dispozici jen 2 cifry: 0 a 1. Jak se počítá s číslama, když máš k dispozici jen cifry? Úplně stejně. Pro většinu lidí co se nevyzná v IT to vypadá strašně nezvykle.

0, 1, 10, 11, 100, 101, 110, 111, 1000… — blahopřeji, právě ses naučil počítat ve dvojkové soustavě.

Fakt za tím nehledej žádnou vědu. Funguje to úplně stejně jako kdybys měl 10 prstů. Jakmile dopočítáš do 9 tak prostě vezmeš cifry 1 a 0 a dáš je vedle sebe a máš číslo 10.

Ve dvojkové soustavě uděláš úplně totéž – 0, 1, 10.

Vztah mezi desítkovou a dvojkovou číselnou soustavou

  • Dvojková soustava se počítá takto: 02, 12, 102 … k číslům se přidává taková dvojka dole aby bylo jasné, že je to číslo ve dvojkové soustavě.
  • Desítková soustava se počítá takto: 010, 110, 210

Otázka za 2 bludišťáky: kolik je číslo 102 v desítkové číselné soustavě?
Správně: je to číslo 210!

Podívej se na následující číselnou řadu, jak číslo v desítkové soustavě odpovídá číslům ve dvojkové soustavě a začne ti to být jasné.

  • 010 = 02
  • 110 = 12
  • 210 = 102
  • 310 = 112
  • 410 = 1002
  • 510 = 1012

Následující hodnoty zná většina ajťáků zpaměti, protože se v IT vyskytují úplně všude, protože počítače jsou z povahy „dvojkové“ (je signál/není signál) neboli digitální.

Dvojková         Desítková  
číselná          číselná       Odpovídá číslu 210
soustava         soustava      s exponentem
--------------------------------------------------
1                1             20
10               2             21
100              4             22
1000             8             23
10000            16            24
100000           32            25
1000000          64            26
10000000         128           27
100000000        256           28
1000000000       512           29
10000000000      1024          210
100000000000     2048          211
1000000000000    4096          212
(dále jsou zajímavé už jen tyto hodnoty)
...              65536         216
...              ...           232
...              ...           264

Ajťáci ještě chápou důležitost této číselné řady: 28, 216, 232, 264, 2128, 2256, 2512

Podobně jako tě na základní škole učili postup násobení nebo dělení velkých čísel na papíře tak existuje postup na převod čísel mezi různými číselnými soustavami. V tomhle návodu pro laiky to ale není podstatné. Myslím si, že většina ajťáků se postup převodu mezi číselnými soustavami naučila pouze jednou ve škole a od té doby to zapomněli a v případě potřeby použijí kalkulačku, která to umí.

Další číselné soustavy vyskytující se v IT

Pro úplnost ještě vyjmenuji další číselné soustavy, které se v IT vyskytují.

16: šestnáctková (hexadecimální) číselná soustava

V IT se velmi běžně pracuje s čísly v šestnáctkové soustavě. Tato soustava obsahuje následující cifry: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F.

Z hlavy vytáhnu pouze tuto číselnou řadu:
F16 = 1510
FF16 = 25510
FFFF16 = 6553510

Ajťák kterej si z hlavy pamatuje nějakou dělší číselnou řadu s hexadecimálními čísly to buď fakt k něčemu potřebuje nebo je to prostě jen magor.

Šestnáctková soustava se používá pro vyjádření a práci s většími číselnými hodnotami

8: osmičková číselná soustava

Z hlavy dokážu říct, že se tato číselná soustava používá v Linuxu u vyjádření práv pro čtení a zápis v souborech.

Žádnou zajímavou číselnou řadu s osmičkovými čísly jsem si nikdy nezapamatoval.

64: šedesátičtyřková soustava

Tato soustava se používá velmi často pro jednoduchou kompresi dat (kolektivně se těmto operacím říká base64). Nedokážu si představit žádnýho ajťáka, který by chtěl s touto šílenou číselnou soustavou něco kloudnýho počítat nebo by si pamatoval všechny znaky které jsou v této řadě obsažené (z hlavy vim že tam jsou všechna malá i velká písmena anglické abecedy a ještě nějaké 2 nebo 3 znaky…)

Shrnutí

  • Počítače něco počítají úplně ve všech činnostech, které s počítačem provádíme.
  • Na signály se nyní koukáme jako na cifry „0“ a „1“ ve dvojkové číselné soustavě
  • Díky cifrám 0 a 1 nyní můžeme počítat ve dvojkové soustavě!
  • V IT se dále vyskytuje 16-ová, zřídka 8-ová a 64-ová číselná soustava