Lyukkártya

A Wikipédiából, a szabad enciklopédiából

A lyukkártya vagy Hollerith-kártya olyan adathordozó, elsődlegesen adatbeviteli eszköz, ahol a digitális információt a keménypapírból készült kártyán adott pozícióban meglevő lyukakkal ábrázolják.

Története[szerkesztés]

Könyvtári lyukkártya
Kivágott, de ki nem töltött könyvtári lyukkártya

Lyukkártyákat és ehhez hasonló rendszereket már a 18. század közepén használtak az automatizálás és az adatfeldolgozás területén. Többnyire az ismétlődő folyamatok vezérlése volt a céljuk. Léteztek többek között lyukkártya-vezérlésű szövőszékek, ahol a lyukkártyát falapocskák jelentették. A verkliket gyakran lyukkártyához hasonló adattárolók vezérelték, de más automatikus vagy félig automatikus zeneszerszámoknál is megjelent ez a megoldás. Charles Babbage lyukkártya-vezérlést tervezett az analitikai géphez.

A lyukkártyák eredete a zenélő dobozok működési módjáig vezethető vissza. Ezeknél és hasonló automatáknál egy forgó henger a rajta levő lyukakkal vezérelte a zeneszámok lejátszását vagy mechanikai folyamatok vezérlését.

A lyukkártyán való adattárolás alapja az, hogy az adott automata működéséhez szükséges adatokat megfelelő formában kódolják. Egy vékony kartonra lyukakat készítenek, amelyeknek a helyét a mindenkori kódtáblázat határozza meg. A funkció végrehajtásához az adathordozón levő lyukakat egy olvasóegység beolvassa és egy megfelelő berendezéssel dekódolja. A parancsok bevitele történhet mechanikus, pneumatikus, optikai vagy elektromechanikai úton.

Könyvtári lyukkártya[szerkesztés]

Az 1990-es évekig léteztek olyan lyukkártyák, amelyeket kézzel lehetett feldolgozni. A könyvtárakban például olyan kártyát használtak, amelynek a négy oldalán voltak a lyukak. Egy hosszú tűt behelyezve a keresési feltételnek megfelelő lyukba ki lehetett választani azokat a katalóguscédulákat, amelyek megfeleltek a keresési kritériumnak. Összetett kereséseket is végre lehetett hajtani több tű segítségével.

Hollerith-kártya[szerkesztés]

COBOL-program egyik utasítását tartalmazó lyukkártya

Az utóbb a számítástechnika területén felhasznált lyukkártya-formátum története az 1890-es amerikai népszámláláskor kezdődött.[1] Ekkor fejlesztett ki Herman Hollerith egy olyan eljárást, amely lyukkártyák segítségével végezte a kiértékelést. A berendezés segítségével dr. Hollerith alig négy hét alatt végzett a 11. amerikai népszámlálás adatainak rögzítésével és kiértékelésével. A gépeket kb. 40 munkatárs működtette.

Ezt követően a lyukkártyát mechanikus és elektromechanikus számoló- illetve lyukkártya-rendező gépeknél alkalmazták. 1928-ig kellett arra várni azonban, hogy a lyukkártya végleges, szabványos formátumot kapjon. Ezt a fajta lyukkártyát nevezik a feltalálója nyomán Hollerith-kártyának.

A Hollerith-kártya téglalap alakú, 18,7 cm × 8,3 cm nagyságú, 0,17 mm vastagságú kartonpapír, amelyre az előre megadott helyekre oszloponként lyukakat szúrtak, hogy egy sor karaktert kódoljanak.

A 20. századi számítógépek kifejlesztésekor a már létező lyukkártyák kézenfekvő megoldást jelentettek a programok és adatok beviteléhez. Konrad Zuse első számítógépe, a Zuse Z1 lyukszalagra írt kóddal működött, később azonban a számítógépekhez majdnem kizárólag Hollerith-kártyát használtak.

IBM 3700 (System/3) lyukkártya

A Hollerith-kártyák eredetileg 240 pozíciót tartalmaztak, amelyet hamarosan 45 oszlop és 12 sorra terjesztettek ki. Ez 45 darab 12 bites karakternek felelt meg. (Később a 6 bites kódolás 90 karakter tárolását tette lehetővé.) Az IBM 1928-ban szabadalmaztatott egy 80 oszlopos formátumot, amely széles körben elterjedt. Eredetileg oszloponként csak egy lyukat lehetett szúrni a számoknak, később ehhez jött egy második lyuk a nagybetűkhöz illetve egy harmadik a különleges jelekhez. Az EBCDIC-kód használatával 1964-től kezdve hat lyuk/oszlopig lehetett elmenni. Egy lyukkártya egy sornyi szövegnek felelt meg és a kártya egy oszlopa egy karaktert ábrázolt, tehát a lyukkártya kapacitása 80 karakter volt. Ez azt jelenti, hogy egy manapság használatos 80 gigabájtos merevlemez egymilliárd lyukkártyának felel meg; ha ennyi kártyát egymásra raknánk, a magasságuk 170 km lenne.

A lyukak előre rögzített elhelyezkedése több programozási nyelv szintaxisára is hatással volt. A régi Fortran-verzióknál az első öt oszlopot egy numerikus címkének tartották fenn. A lyukkártyák szemrevételezésével így könnyen észre lehetett venni, ha egy címke azaz egy kártya rossz helyre került. A hatodik oszlopban egy jel, általában egy * vagy egy nagy C (=continue) azt jelölte, hogy a kártya az előzőnek a folytatása. Az utolsó nyolc oszlop (73-tól 80-ig) a kommentároknak volt fenntartva. A Fortran-programokhoz gyártott lyukkártyákon ezeket a mezőket vizuálisan is megjelölték.

Működése[szerkesztés]

IBM-kártyalyukasztó

A lyukkártyák írására vagyis lyukasztására külön gép, a kártyalyukasztó szolgált, de készítettek kézi lyukasztásra szolgáló egyszerű kártyalyukasztókat is. A kártyalyukasztó írógép-billentyűzetből, lyukasztórészből és egy programkártyából állt. Miután a kártyalyukasztóval rávitték a kódot a kártyákra, a kártyákat egy második gépen ellenőrizték, amelyen újra bepötyögték az adatokat, és ha a második bevitel egyezett a kártyán már meglevő lyukasztásokkal, akkor a gép ellenőrzöttként jelölte meg a kártyát. A programkártya a munka megkönnyítésére szolgált. Ennek segítségével például numerikus vagy alfanumerikus mezőket lehetett definiálni a kártyán és ezekhez a mezőkhöz közvetlenül lehetett ugrani. Volt egy másolóbillentyű is, amelynek segítségével egy kártyát a megadott oszlopig lehetett másolni. A programkártya megkönnyítette a tömeges adatbevitelt azzal, hogy bizonyos oszlopokat automatikusan átugrott, vagyis elég volt csak a tiszta adatokat begépelni, nem volt szükség vezérlőbillentyűk használatára. Az újabb készülékek arra is alkalmasak voltak, hogy a lyukkártya adattartalmát szövegesen is megjelenítsék a kártyán.

Lyukkártyarendező gép (szorter)

A kártyák beolvasása optikai vagy mechanikus olvasóberendezésekkel történt. A lyukkártyaköteget behelyezték az olvasórekeszbe és egy súllyal lenyomatták. Egy gombbal bekapcsolták az olvasóberendezést, ezután a gép levegő befújásával fellazította a köteget és egyesével beolvasta a kártyákat. Maga a beolvasás vagy mechanikus letapogatással vagy fotocellákkal történt.

Ebben az időben a programok nem interaktív módon működtek; a programot elindították, beolvasta az adatokat, feldolgozta őket és kiadta az eredményeket. Ehhez a működési módhoz három kártyakötegre volt szükség: az egyik a programot, a másik a bemenő adatokat tartalmazta, és a harmadikra kerültek a kimenő adatok. Nagytömegű bemenő adat feldolgozásakor a kártyarögzítés után néha hatalmas mennyiségű lyukkártyát kellett megfelelő sorrendbe rendezni. Erre használták a szorter-, magyar elnevezéssel a lyukkártyarendező gépeket. A harmadik köteg használata elég kivételes volt, mivel az eredményeket legtöbbször elegendő volt papírra nyomtatni.

Utóélet[szerkesztés]

A Jaquard-féle szövőszék lyukkártyái

Az 1960-as évektől kezdődően az interaktív adatbeviteli lehetőségek fokozatos elterjedésével a lyukkártya fokozatosan vesztett számítástechnikai jelentőségéből. Az évtized végén az IBM még tervezte kisebb méretű és nagyobb kapacitású kártyák bevezetését, de erre már nem került sor. Időközben megjelent a lyukszalag, amely nagyobb adatsűrűsége és kisebb méretű eszközei miatt az újabb alkalmazásoknál már kiszorította a lyukkártyát a számítástechnikából.

A lyukkártyát azonban továbbra is alkalmazták más területeken, például mosógépek programjának tárolására, illetve beléptető kártyaként. Ezekben az esetekben azonban a kártya nem kartonpapírból, hanem vékony műanyaglapból készült. A chipkártya elterjedése azonban ennek a felhasználási módnak is véget vetett.

Hollerith-kártyákat néhány mechanikus blokkolóóránál még használnak. Használatban maradtak az amerikai választási eljárásokban is, de annak megbízhatóságát George W. Bush elnökké választásakor súlyos kritikák érték.[2]

Jegyzetek[szerkesztés]

  1. Hollerith 1890 Census Tabulator
  2. SPIEGEL 46/2000, S. 196 Archiválva 2012. július 21-i dátummal a Wayback Machine-ben (pdf-Datei, 521 kB)

További információk[szerkesztés]

Kapcsolódó szócikkek[szerkesztés]

Commons:Category:Punch cards
A Wikimédia Commons tartalmaz Lyukkártya témájú médiaállományokat.