Számítástechnika
A Wikipédiából, a szabad lexikonból.
A számítástechnika az automatizált adatfeldolgozás eszközeivel és azok különböző területeken való használatával (pl. a számítógép építése és azok programozása) foglalkozó elméleti és alkalmazott műszaki tudomány.
Ide tartozik a hardver- és szoftverelemek tanulmányozása, a működést segítő szervezési, illetve alkalmazási, szolgáltatási összetevők rendszere. Fejlődése során a speciális célokra tervezett célgépektől eljutott a sok felhasználó számára általános és speciális szolgáltatásokat egyaránt nyújtó számítógép-hálózati rendszerek tervezéséhez és kivitelezéséhez.
A számítástechnika szoros kapcsolatban van az informatikával, az információ keletkezését, továbbítását, feldolgozását és hasznosítását vizsgáló tudománnyal. A számítástechnika tekinthető az informatika egy részterületének is, az automatizált információkeletkezés, -továbbítás, -feldolgozás és -hasznosítás tudományának. Az informatika ennél bővebb, pl. az informatika körébe tartozik a híradástechnikai eszközök (tévé, rádió) tanulmányozása, ami a számítástechnikának csak közvetve része.
A számítástechnika alapvető alkalmazása manapság a számítógépek, különösen a személyi számítógépek (PC-k) építése. Egy számítógép elsősorban nagyobb fokú programozhatóságában különbözik az egyszerűbb automatáktól, mint pl. egy számológép, egy emelődaru vagy egy mobiltelefon. Ez azt jelenti, hogy képes sok és komplex feladatot emberi beavatkozás nélkül végrehajtani, és a végrehajtás során különféle egyszerűbb döntéseket hozni.
Tartalomjegyzék |
[szerkesztés] Történelem
A számítástechnika története során az egyszerű mechanikus gépektől az igen összetett elektronikus, digitális vezérlésű automatákig haladt. Egyrészt szembetűnő a mai gépek egyre nagyobb fokú programozhatósága (egyre önállóbban tudnak komplex feladatokat is megoldani), az ennek következményeképp kialakuló nagyobb mértékű automatizmus, önirányítottság; másrészt ettől nem függetlenül a feladatkörök kibővülése, amely az egyszerűbb, konkrétabb feladatok (szövés, összeadás, ajtónyitás) ellátására épített célgépektől a komplex és sokféle tevékenységre képes általános célú univerzális gépek megvalósításáig terjedt.
[szerkesztés] Számoláskönnyítő egyszerű eszközök
- Az első ismert mechanikus számológép az abakusz. Kb. 5000 éves. Eszközöket egyébként kb. 300 000 éve használ az emberiség, míg a számfogalmat vélhetően körülbelül 30 000 éve ismeri.
- John Napier Murchiston (1550–1617) az ún. Napier-csontok segítségével gépesítette a szorzás műveletét.
- Edmund Gunter (1581–1626) – elődei ismereteit felhasználva – 1620-ban logaritmikus számolólécet szerkesztett (logarléc). E találmány időtállóságát mi sem bizonyítja jobban, mint az a tény, hogy 20 évvel ezelőtt, az 1980-as évek elejéig, még középiskolai tananyag volt a logarléc használata.
[szerkesztés] Mechanikus számológépek
Rengeteg félig-meddig dokumentált történet, legenda kering ókori kínai, görög és későbbi arab tudósok és feltalálók által tervezett, esetleg épített gépekről, automatákról (Arkhimédesz, Eratoszthenész, Hérón, Mo Ti, Löw rabbi Góleme stb.). Nem mindig tudjuk eldönteni, mennyi igazság van ezekben. Annyi bizonyos, az emberiség ősidők óta szeretett volna fizikai/szellemi munkára képes, lehetőleg önirányított gépeket, automatákat, de legalább egy számológépet építeni, erről tanúskodik pl. Raymond Lullus 1275 körül írt és közzétett mechanikus gépének terve.
Az 1600-as évektől, az ipari forradalom korszakától kezdve több megvalósult próbálkozás is történt mechanikus számológép építésére. Igazán hatékony mechanikus számológép, pláne általános számítógép építésének azonban nagyon komoly technikai korlátai vannak. Úgy tűnik, hogy a fizikának ez a tartománya túl „durva” ahhoz (az épített gépek lassúak, drágák, nagyok, nehézkesek), hogy a papíron végzett kézi számolásnál jóval hatékonyabban működő információfeldolgozó gép építését lehetővé tegye.
- 1623: Az első ismert mechanikus számológép megjelenése, megalkotója Wilhelm Schickard. Az átvitelt egy tízfogú és egy egyfogú fogaskerék segítségével valósítja meg. E gép mind a 4 alapműveletet tudta végezni.
- 1642: Blaise Pascal (1623–1662) egy mechanikus összeadó-kivonógépet szerkeszt, amelyben a főszerep szintén a fogaskerekeké volt. E géptípusból mára körülbelül 50 maradt fenn. A tízes számrendszerre épül, 8 jegyű számokat tud maximálisan kezelni.
- 1673: Gottfried Wilhelm Leibniz (1646–1716) tökéletesíti Pascal gépét, így mind a négy alapművelet elvégezhető a géppel. Az összeadás-kivonás szintén fogaskerekek hajtogatásán alapul, a szorzás egy váltótárcsa segítségével valósulhat meg. Leibniz először fogalmazza meg azt az elvet, hogy célszerűbb lenne a kettes számrendszerben dolgozni, de a számok hossza miatt ezt nem tudja megvalósítani.
- 1820 Charles Xavier Thomas de Colmar (1785-1870) francia matematikus a francia hadseregben való szolgálata közben megépítette az első kereskedelmi forgalomba került, és széles körben elterjedt mechanikus számológépet. Ez képes volt mind a 4 alapművelet elvégzésére. A gép terjesztése jelentős üzleti sikert hozott a forgalmazóinak, és egészen az I. világháborús évekig használták.
Charles Xavier Thomas de Colmar egy automata, programvezérelt gép építésének gondolatát is felvetette.
[szerkesztés] Programozható célgépek
[szerkesztés] Szövőgép és beszélőgép
- 1769-ben Kempelen Farkas billentyűzetvezérlésű hangszintetizátort kezdett építeni, amit 1782-ben mutatott be először. Ez a gép ugyan nem volt programozható, billentyűkkel és nyílások (csövek) ujjal való befogásával, illetve egyéb mechanikus módokon kézileg lehetett vezérelni, és mechanikus elveken alapult (fabillentyűkből és faházból, fémből álló hangképző „szervekből” és egy bőrből, később gumiból készült légtölcsérből állt), de megmutatta, hogy olyan komplex feladatokat is lehet gépileg szimulálni, mint az emberi hang képzése. A gép szótagokat és rövid szavakat „tudott” „kimondani” (bár a kezeléséhez sok gyakorlás kellett). Több mint 100 évig senki sem tudott Kempelenénél jobb hangszintetizátort építeni.
- 1786: Johann Müller német hadmérnök megfogalmazza, hogy szükség van a részeredmények tárolására. Ezen tárolót regiszternek nevezi el, és feladatának az adatok ideiglenes elhelyezését jelöli meg.
Az adatok és részeredmények tárolása egyrészt alapfeltétele a programozhatóságnak, másrészt tényleges lépés affelé.
- 1820-ban Joseph-Marie Jacquard mechanikus szövőgépet épített, mely automatikusan, külső programozás révén szőtt mintákat: a gépet kartonból készült lyukkártya vezérelte, amely a mintákat tárolta. A gép széles körben elterjedt, alkalmazták is a szövőiparban, és létezése olyan tudósokat befolyásolt, mint Neumann János (tudjuk, hogy barátaival élénk eszmecseréket folytatott róla és hasonló gépekről).
[szerkesztés] Babbage gépei
Sok gépet tervezett Charles Babbage (1792–1871) is.
- 1812-ben rájött a gépek és matematika közötti összhangra.
Babbage megfogalmazza, hogy egy (programozható) számológépnek milyen követelményeknek kell megfelelnie:
- ne kelljen mindig beállítani a számokat, meg lehessen adni egyszerre az összes számot és műveletet (ez lyukkártya segítségével oldható meg);
- legyen utasítás (a művelet a lyukkártyán);
- legyen külső programvezérlés (a lyukkártyákon tárolt utasítássorozat, a program);
- legyen bemeneti egység (ez a lyukkártyát olvasó berendezés);
- legyen olyan egység, amely a kiindulási és a keletkezett számokat tárolja (memória);
- legyen aritmetikai egység, amely számológépen belül a műveleteket végzi el;
- legyen kimeneti egység (a gép nyomtassa ki az eredményt).
Babbage elvben konstruál ilyen gépet, az „Analytical engine”-t, amely 20 jegyű számokkal végez műveleteket. Nem tudja megépíteni, mert a kor technikája nem teszi lehetővé (például a súrlódást nem tudja kiküszöbölni). 100 év múlva építik a Babbage által megálmodott gépet.
- Augusta Ada Byron (Lady Ada Lovelace) (1816–1851) ezen képzeletbeli géphez leírja azon módszereket, ahogyan programot lehet rá készíteni. Megjelennek az algoritmusok egyes elemei (goto, stop). Ily módon tehát Ada az első ismert programozó. Az ADA programozási nyelv később róla lett elnevezve.
- 1822 Babbage épít egy másik, gőzzel hajtott gépet (a Difference Engine), amely differenciálni is tud, a függvények differenciálhányados-függvényét közelítő módszerekkel számolva.
Ez egy univerzális, külső program vezérelte elektromechanikus számítógép, 6-odfokú polinomhelyettesítési értékeket számol, 20 jegy kijelzése)
[szerkesztés] A számítógépek alkalmazásának kezdetei
- 1847-54 George Boole áramkörelméletben is alkalmazható logikai algebrája a későbbi digitális működésű gépek tervezésének alapjait jelentette.
- 1887 Herman Hollerith (1860–1929) nagy tömegű adat statisztikai feldolgozására alkalmas gépet épít. A kifejlesztését az tette szükségszerűvé, hogy az USA-ban a népszámlálás (1890) feldolgozása hagyományos módszerekkel mintegy 3 évet (mások szerint 10 évet) vett (volna) igénybe, a végül szükségesnek bizonyult 6 hét helyett. A gép lyukkártyákat tudott rendezni és szétválogatni, amit mechanikusan tudott megoldani, tűk segítségével. A (papír) lyukkártyák egydolláros nagyságúak voltak. Hollerith 1924-ben alapított cégéből fejlődik ki a későbbi IBM. Lyukkártya (1 lyuk - 1 szám, 2 lyuk - 1 betű);
- 1937–1942: Vincent Atanasoff és Clifford Berry megterveznek egy csak elektronikus egységekből álló gépet, ez volt az első elektronikus digitális számítógép, az Atanasoff–Berry Computer (ABC). Jelenleg ezt tartjuk az első mai értelemben vett (elektronikus) számítógépnek - érdekes, hogy ennek egyébként 1973-ban amerikában bírósági tárgyalás útján kellett eldőlnie, különféle elsőbbségi jogviták miatt. A bírósági tárgyalásról angolul...
- 1938-1941: Konrad Zuse megépíti az első szabadon programozható gépet, a Z3-t. Felépítése hasonló a mai gépekhez: processzort (ALU), vezérlőegységet (CU), memóriát, bemeneti egységet (szalag) és kimeneti egységet tartalmaz. Az egytonnás gép néhány ezer elektromágneses reléből állt, repülők és rakéták tervezéséhez használták. Egy összeadást átlag 0.7 mp, szorzást 3 mp alatt végzett el, a tízes számrendszerbeli számokat már lebegőpontos bináris ábrázolás útján kezelte. A gép 1944-ben egy bombázás során elpusztult, de Zuse a 60-as években újra megépítette. Rekonstruált változata a Müncheni Múzeumban látható. Bár a gépet arimtetikai műveletek végzésére tervezték, Raul Rojas később bebizonyította, hogy alkalmas általános célú számítógépnek is (képes tetszőleges Turing-gép emulálására).
- 1943-ban az angol titkosszolgálat Alan Turing matematikus vezetésével megépítteti a Colossust, ez szintén relés alapon épül fel, és a II. világháborús német katonai rejtjelezőkód megfejtését segíti. A kódfejtés egyébként különböző matematikai, katonai, titkosszolgálati módszerek ötvözésével sikerült is.
- 1944 Howard H. Aiken ballisztikai számítógépe, a Mark I. lövedékpálya-táblázatokat számol. E gép fél focipálya méretű volt, 800 km kábelt, vezetéket és relét tartalmazott, egy műveletet 3-5 másodperc alatt végzett el, képes volt az összes alapművelet és komplex (változós?) egyenletek megoldására.
[szerkesztés] Általános célú számítógépek és elterjedésük
- 1946 megépül John Presper Eckert, John W. Masuchly tervei alapján az első digitális elektronikus gép, az ENIAC, 18 000 vákumcsőből, 70 000 ellenállásból, 5 millió forrasztással.
30 tonnás, 160 kW-ot fogyaszt, 5 000 összeadást vagy 400 szorzást tud végezni percenként, 10 jegyig számol, 20 regiszteres, 1000× gyorsabb mint a Mark I. MTBF 40 sec. Külső programvezérléssel (huzalozással) működik.
- 1945-ben építették a hasonló EDVAC gépet Neumann János (1903-1957) vezetésével. Ez már központi vezérlő egységet tartalmaz, van benne lehetőség feltételes vezérlésátadásra, memória tárolja a programokat és az adatokat is.
- 1951 Megjelenik az első kereskedelemben kapható számítógép, az UNIVAC I..
- 1953 A Szovjetunióban megépítik az első tudományos és müszaki számítások végzésére alkalmas számítógépet BESZM-1-et. (Átlagos műveleti gyorsasága 10 KFlops)
- 1964 megjelenik az első általános célú kereskedelmi gép, az IBM 360.
[szerkesztés] Kapcsolódó tudományágak
[szerkesztés] Matematikai alapok
- Szimbolikus logika, Boole-algebra: komunikáció a gépekkel, áramkörtervezés;
- Számítógéptudomány: az automaták, a velük való kommunikáció (=az automaták irányítása, programozása) általános matematikai elmélete;
- Számításelmélet: kiszámíthatóságelmélet, bonyolultságelmélet: az algoritmusok megvalósításának, hatékonyságának matematikai elmélete;
- Diszkrét matematika: kombinatorika, véges testek, a véges rendszerek (a számítógépek is ilyenek) mennyiségi viszonyainak tanulmányozása;
- Gráfelmélet: áramkör- és számítógéphálózatok elmélete, keresési problémák modellezése;
- Információelmélet: az információ mérésének matematikai elmélete; kódok,
- Komputeralgebra: hogyan számolnak a számítógépek;
== Részterületek ==
[szerkesztés] Számítástechnikai elmélet
- Számítógépes algoritmusok elmélete
- Fordítóprogram
- Nyelvi elemzés (lexikai analízis)
- Kiszámíthatóság elmélete
- Kriptográfia (titkosítás elmélete)
- Formális szemantika
- Bonyolultságelmélet
- Logikai programozás
- Típusok elmélete
[szerkesztés] Hardver, fizikai megvalósítás
- Mikroprogramozás
- Integrált áramkörök
- Memória
- Rendszerteljesítmény
[szerkesztés] Számítástechnikai rendszerek osztályozása
[szerkesztés] Szoftver, programozás
A programokhoz szorosan kapcsolódó jogi témák:
[szerkesztés] Adatkezelési rendszerek
- Fájlok
- Adatbázis-kezelők
[szerkesztés] Számítástechnikai eljárások
- Adatkódolás (kódolás céljai, okai, módszerei; adattárolás fizikai médiákon stb.)
- Adattömörítés
- Hangtömörítés és -kódolás (kodek)
- Képtömörítés és -kódolás (kodek)
- Hibaészlelés
- Hibajavítás
- Kriptográfia
- Titkosítás
- Digitális aláírás
- Adattömörítés
[szerkesztés] Számítógép alkalmazása
[szerkesztés] Számítástechnikai kultúra
[szerkesztés] Vezető szakemberek
[szerkesztés] Lásd még
informatika - számítógép - számológép - számítógéptudomány - számábrázolás