Digitális idióta szerkesztés

Digitális ideákat hasztalan üldözők táborához tartozom. Nem vagyok hajlandó elfogadni, hogy emberöltőn keresztül felhalmozott tudásbázist és a hozzá tartozó terminológiát lehessen egy tollvonással hibásnak itélni. Ezért tartozom a digitális idióták azaz digióták közé.

Miről is van szó? szerkesztés

Valamikor az elektronikus számítógépek létrehozásának hajnalán valahol valamikor valaki (itt most nem fontos) kitalálta a kettes számrendszer használatának praktikusságát. Minden adatot számként tárolva, minden számot kettes számrendszerben felírva. Minden számjegy egy bit.

A számítógép működését vezérlő egységek ennek a támogatására készültek. Az egyik egység amikor egy adatot akar kezelni, akkor hivatkozik az adatot tároló egység helyére. Ezt hívják címnek. Az adat pedig az, amit ezen a címen el lehet érni.

A zseniális lusta, de legalábbis kézenfekvő egyszerűsítés az, hogy a címek is adatok. A program kódja ugyanúgy adat, mint a többi adat amin a program dolgozik. Az operációs rendszer számára a program is csak adat.

Az adatok szerkesztés

A biteket persze csoportosítjuk. Ez szükséges és praktikus is volt, mert a feldolgozásuk kezdetben eléggé lassú volt. A bitek csoportosítása gyakorlatilag az adatkezelés párhuzamosítása is volt. (Jól sejti a kedves olvasó, a legtöbb modern számítógép, noha Turing teljes, nem hasonlít egy olyan Turing-gépre aminek a szalagján 0-k és 1-esek vannak.)

Tehát csoportosítjuk a biteket. A bitek valamely csoportját címezzük a regiszterekben, a memóriában, a perifériákon.

Hány bit is alkosson egy csoportot? 1-nél több nyilván.

  • 2 bit: 4 különböző állapot. Ezen még egy decimális számjegy sem fér el.
  • 3 bit: 8 különböző állapot. 8-as számrendszerhez akár már jó lehet. Nagyságrendileg megfeleltethető a RTM méretének. Sok helyen még most is használják a digitális világban a 8-as számrendszert. Bár kissé zavaró ez a 3-as szám. Olyan esetleges. 3 biten nem lehet a 10-es számrendszer számjegyeit tárolni.
  • 4 bit: 16 különböző állapot. Ez már túl sok, ha számrendszert akarok ilyen számjegyekből csinálni, akkor a 9 után újabb szimbólumokat kell használni, hogy tudjunk beszélni az így csoportosított bitekről. Már itt létrejött a Hexadecimális számrendszer. Najó, sok, de más szóval elegendő. Ilyen bitkupacokkal már lehet decimális számrendszerben is számjegyeket kezelni, tehát számolni. Biztos van olyan számológép vagy processzor amelynek a működésében ez a 4 bites csoportosítás esetenként megtalálható.
  • 5 bit: 32 különböző állapot. Elfér benne az angol ábécé összes betűje vagy számok. Ez eléggé sánta így.

Tulajdonképpen a bitek száma lehetne valami kerek szám. Igy ha adatot tárolunk egy bitkupacban akkor jól tudjuk csoportosítani az adat darabokat.


  • 6 bit: 64 állapot. Ezzel már lehet minimálisan írni olvasni. De az igények alapján kicsit több bitet építeni nem annyira macerás, mint amennyi előnye lehet picit több bitnek.
  • 7 bit: 128 állapot. Ez már annyira jó, hogy elfér benne a teljes ábécé kis és nagybetűkkel, számokkal matematikai műveletekkel, írásjelekkel, sőt még a terminál vezérlőkarakterekkel is. Egyetlen problémája, hogy a 7 prímszám.
  • 8 bit: 256 állapot Ez már olyan sok, hogy azt sem tudja a programozó mit kezdjen vele. Elfér benne két hexa számjegy. Az ASCII kommunikációhoz még egy paritásbit is belefér. És különben is kettő hatvány. Ez annyira bejött, hogy nevet is kapott. 8 bit lett egy byte. Történelmileg az adatok egységeinek megmaradt a byte.
  • 10 bit: Nem terjedt el a 10 bites csoportosítás, pedig abban BCD-ben nem 0-tól 99-ig lehetett volna számolni, hanem mondjuk 0-tól 999-ig. 1024 különböző állapot.

Szóval 8 bit lett a befutó az adatoknál. És az összetett algoritmusok és hardware-ek elkezdték használni ennek többszörösét.

A címek szerkesztés

  • 16 bit: A 16 bites címzés 65536 különböző memóriarekesz megcímzését biztosította. Ez nem azt jelentette, hogy volt is ilyen sok memória, hanem azt, hogy megcímehetjük-e.

A 10 bittel leírható 1024 a 10-es számrendszerben nagy számokon elámuló emberek szemében elég nagy szám ahhoz, hogy jelentősséggel bírjon. Ezer gépi szó memória egy időben eléggé nagy szó volt. Pláne ennek bármely többszöröse. Rá is ragadt a kilo előtag.

A címbitek számának növekedésével a kilobyte mint mértékegység egyre nagyobb számok mögé került odaírásra. Viszont mindig is szigorúan 1024-et jelentettek. Évek teltek így, könyvespolcok teltek meg ezzel a terminológiával, generációk nőttek fel ezzel a tudással.

16 bit mágikus határ az lett a 64kilobyte rövidebben 64KB vagy csak 64K. márkanevek honosodtak meg a 2 hatványaiból és többszöröseiből. C=64, C=16, MO8X, PROPER8, PROPER16, PROPER32 ...

Amikor a PC a szegmentálásos technikával 20 bitre növelte a címezhetőséget, akkor mindenki tudta, hogy 640K minrenre elég. Plusz 384K ROM az összesen 1024K

És el kezdett fraktálosodni ez a sok 2 hatványos méret. az 1024 kilobájtot lehetett 1 megabájtnak hívni. De igazából nem szólt ez másról, mint hogy hány bit a címtartomány.

Ugorjunk 32 bitre és egyből megkapjuk a 4096 Megabájtot azaz a 4 Gigabájtot. Minden 10 bit után újraindul a számlálás egy újabb 1024-es prefixszel.

Sokáig a diszkek méretének kiszámításánál is az volt, hogy össze kellett szorozni a szektorméretet (pl 512 bájt azaz fél kilobájtot) a cilinderek, fejek és sávonkénti szektorok számával. És meg is kaptuk az eredményt. KB-ban. ha megában akartuk, osztottunk mennyivel is? Igen, 1024-gyel.

A prefixek névleg megegyeztek az SI prefixeivel. kilo, mega, giga, stb... De sose jelentettek 1000-et. A byte, mint mértékegység nem volt a fizika hatáskörében. Nem is igazából mértékegység. igazából dimenziótlan számokról mint mennyiségekről beszélünk. a byte mint utótag jelezte, hogy az előtag nem 10^3 hanem 2^10. A 64K-s memóriát soha senki nem mondta kicsit több mint 65 és fél kilobájtnak. A 65,536 * 1000 műveletből sem az első sem a második tényező nem kettő hatvány. Nem lehet vele könnyedén számolni.

Azért képzeljük el a C=65.536 számítógép kistestvérét a C=16.384-et. Ugye abszurd...

És akkor egyszercsak valamikor valaki valahol úgy gondolta, hogy 1000-rel számol. Fittyet hányva a teljes szakma évtizedeken keresztül felhalmozott tudására, terminológiájára, szokásaira. Valószínűleg nem programozó volt, hanem mondjuk döntéshozó. Hozott is döntést.

Az eredmény a következő lett. Újradefiniálták évtizedek kilobájt fogalmát. 1024-ről 1000-re. Kinyomtatott könyvek, chipekre írt feliratok, generációk tudása lett számszakilag hibás.


Folytatása következik. Forrásolok...