rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · web viewangol matematikus 1936-ban leírta...

37
Informatika jegyzetek D VPE 1. oldal Velkeyné Palócz Erika: Informatika jegyzetek Rendszerelméleti alapfogalmak....1 Az informatika alapfogalmai......2 Jel............................2 Analóg és digitális jelek:. . .2 Kommunikáció...................3 Adat és információ.............3 Számrendszerek...................4 Adatábrázolás a számítástechnikában..............5 Számábrázolás..................5 Fixpontos számábrázolás......5 Lebegőpontos számábrázolás. . .7 Egyéb kódrendszerek..........7 Karakterábrázolás..............7 ASCII kódrendszer............7 ANSI kódrendszer.............7 Unicode rendszer.............7 Színábrázolás..................8 RGB színrendszer.............8 CMYK színrendszer............8 Hangábrázolás..................8 Matematikai logika...............9 NEM művelet....................9 ÉS művelet.....................9 VAGY művelet..................10 Logikai kifejezések...........10 Műveleti sorrend..............10 Logikai azonosságok...........11 Néhány további logikai művelet 11 A logika alkalmazása a számítástechnikában...........11 Számítástechnika................13 A számítástechnika története....13 Pioneers of Computing.........13 Neumann-elvek ................15 Számítógép-generációk.........16 Számítógép–architektúra.........17 Hardver – architektúra........17 Szoftver – architektúra.......17 A kompatibilitás fogalma....17 A programok...................18 Programok csoportosítása......18 I. Rendszerprogramok........18 I./2. Operációs rendszer....18 Az operációs rendszerek csoportosítása..............18 fájlkezelés.................19 I./3. Segédprogramok........19 II. Felhasználói szoftverek. 19 Programnyelvek..............21 Programtelepítés............23 Szoftverpiac....................23

Upload: others

Post on 30-Dec-2019

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 1. oldal

Velkeyné Palócz Erika: Informatika jegyzetekRendszerelméleti alapfogalmak..............................1Az informatika alapfogalmai...................................2

Jel........................................................................2Analóg és digitális jelek:...............................2

Kommunikáció...................................................3Adat és információ.............................................3

Számrendszerek.......................................................4Adatábrázolás a számítástechnikában.....................5

Számábrázolás....................................................5Fixpontos számábrázolás...............................5Lebegőpontos számábrázolás........................7Egyéb kódrendszerek.....................................7

Karakterábrázolás...............................................7ASCII kódrendszer........................................7ANSI kódrendszer.........................................7Unicode rendszer...........................................7

Színábrázolás......................................................8RGB színrendszer..........................................8CMYK színrendszer......................................8

Hangábrázolás....................................................8Matematikai logika..................................................9

NEM művelet.....................................................9ÉS művelet..........................................................9VAGY művelet.................................................10Logikai kifejezések...........................................10Műveleti sorrend...............................................10Logikai azonosságok........................................11Néhány további logikai művelet.......................11A logika alkalmazása a számítástechnikában...11

Számítástechnika...................................................13A számítástechnika története.................................13

Pioneers of Computing.....................................13Neumann-elvek ................................................15Számítógép-generációk....................................16

Számítógép–architektúra.......................................17Hardver – architektúra......................................17Szoftver – architektúra.....................................17

A kompatibilitás fogalma............................17A programok.....................................................18Programok csoportosítása.................................18

I. Rendszerprogramok..................................18I./2. Operációs rendszer...............................18Az operációs rendszerek csoportosítása......18fájlkezelés....................................................19I./3. Segédprogramok...................................19II. Felhasználói szoftverek...........................19Programnyelvek...........................................21Programtelepítés..........................................23

Szoftverpiac...........................................................23

R e n d s z e r e l m é l e t ia l a p f o g a l m a k

Az általános rendszerelmélet a tudományok között olyan szerepet játszik, mint régen a filozófia; ma a rendszerelmélet a „tudományok tudománya”, amelyet minden tudomány segítségül hív alapvető kérdéseinek megválaszolásához és használ a konkrét vizsgálataiban.Az általános rendszerelmélet: bonyolult rendszerek törvényszerűségeit természettudományos illetve matematikai módszerekkel vizsgáló tudomány. A rendszerek természetétől függetlenül lehetővé teszi azok tanulmányozását.Rendszer: Együvé tartozó (valamilyen szempont szerint) egymással kapcsolatban (kölcsönhatásban) álló elemek olyan együttese, amely egészként viselkedik. Elem: a rendszernek az az önálló műveletet végző része, amelyet – a vizsgálat szempontjából – egységnek tekintünk, vagyis őt magát rendszerként nem vizsgáljuk. Minden elemnek feladata van, és így a helyét a rendszeren belül a rendszer szerkezete határozza meg. Azt, hogy mit tekintünk elemnek, mi határozzuk meg annak megfelelően, hogy mit akarunk megvizsgálni. Részrendszer, alrendszer.Környezet: A rendszer környezetét alkotja minden, ami a rendszeren kívül van, de annak működését befolyásolja.Interfész: Az a „felület”, amin keresztül a rendszer érintkezik a környezetével.Folyamat (a rendszerelmélet által használt definíció szerint) a rendszerben végbemenő állapotváltozások sorozata. Ennek során a rendszer elemei különböző kapcsolatban lehetnek egymással.Kibernetika: a folyamatvezérléssel foglalkozó tudományág.Struktúra (szerkezet, felépítés) alatt egy adott rendszer pillanatnyi állapotát értjük, azaz annak megadását, hogy mely elemek tartoznak a rendszerbe, és ezek között milyen kapcsolatok állnak fent.A rendszereket sokféle szempont szerint szokás csoportosítani, például:Materiális rendszer: Az anyagi világ jelenségei, vagyis anyagi, valóságos rendszerek. Absztrakt rendszer: Tudatbeli, elméleti, gondolati rendszer. Például az egész számok halmaza.Statikus / dinamikus rendszer: Ha a vizsgált rendszer szerkezete a vizsgálat szempontjából nem szűkül, nem bővül új elemekkel, elemei nem cserélődnek más elemekre, akkor a rendszer statikus, egyébként dinamikus.

Page 2: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 2. oldal

Működő / nem működő rendszer: Ha a rendszer elemei közti kapcsolatok változnak, akkor működő rendszerről beszélünk. Épület? Akrobatacsoport?Zárt / nyílt rendszer: Nyíltnak nevezik a rendszert, ha az a környezetével anyagot cserél, különben zártnak. Élő szervezetek? Televíziókészülék (energiát kap a környezetétől)?Célorientált (célratörő) / nem célorientált rendszer: Ha a rendszernek létezik egy olyan állapota, aminek az elérésére törekszik, akkor célorientáltnak nevezik. Karóra? Rakéta?Természetes / tervezett rendszer: az emberiség által, adott feladat megoldására létrehozott rendszer (iskola) tervezett rendszer. Mind a természetes, mind a tervezett rendszerek feladatuk ellátásának alárendelten végzik a tevékenységüket.Határozott (determinisztikus) / határozatlan rendszerek: Attól függően nevezzük így a rendszereket, hogy meghatározott-e a viselkedésük bizonyos külső hatásokra. A reagálása (outputja, kimeneti értéke) nem határozott, ha egy adott külső hatásra – esetleg többféle állapotában – többféleképpen is viselkedhet.Adaptív és nem adaptív rendszer: Ha a megváltozott környezetéhez képes alkalmazkodni, akkor adaptívnak nevezzük. Például létezik adaptív közlekedési lámpa, ami érzékeli a várakozó autókat és ennek megfelelően vált, a szokásos közlekedési lámpa pedig bizonyos időközönként vált.Egy rendszer leírása: Meghatározzuk mely elemekből áll, és hogy az elemek közt milyen kapcsolatok vannak. Elvileg minden rendszer leírható, de ahhoz jól kell meghatározni (körülhatárolni) a rendszert. Egy (bonyolultabb) rendszer vizsgálatát rendszerelemzésnek nevezzük, melynek során több szempontból vizsgáljuk a rendszert. A rendszervizsgálat szempontjai:

A rendszer rendeltetése, funkciói (feladatai),

a környezettel való kapcsolata, a határán megfigyelhető kölcsönhatások (anyag-, energia-, információ- és egyéb csere, stb.),

viselkedésmódja, belső kapcsolatai, felépítése.

Rendszerek vizsgálati módszerei: fekete doboz módszer: ha nem ismerjük a rendszer belső felépítését, akkor megfigyeljük, hogy milyen eseményekre (inputra, bemeneti, bemenő jelekre) hogyan reagál (milyen outputokat, kimeneti, kimenő jeleket ad), és az ezek közti összefüggésekből következtetünk a rendszer működési módjára.

Modell-módszer: Egy általunk készített modellen végezzük el a szükséges vizsgálatokat, ha a rendszer nem vizsgálható (ha megoldhatatlan a vizsgálata, például a tervezés stádiumában van, a vizsgálat a rendszer pusztulását okozná, túl költséges lenne, vagy ritka, lassú folyamatok esetén).Rendszerfejlesztés:Ha létrehozni akarunk egy rendszert, akkor a rendszerelemzés tervezéssé válik, melynek végére kialakul a kívánt rendszer modellje.Ennek egy lehetséges menete:

1. A rendszer egészének vizsgálata, környezeti hatások számbavétele.

2. A végrehajtandó feladatok számbavétele, ezek alapján részrendszerekre tagolás, a részrendszerek kapcsolatának, viselkedésének tisztázása.

3. A részrendszerek leírása.4. A rendszermodell ellenőrzése.

A számítógépet és annak használatát rendszerként a következő elemekre bonthatnánk: hardver, szoftver, orgver (a számítógépek szervezési környezete), menver (a használó ember).

A z i n f o r m a t i k a a l a p f o g a l m a i

Az informatika fiatal tudományág, de régóta létezik: az információval foglalkozó tudományág. Résztudományai az információelmélet (az információ mérésével foglalkozik), az információtechnológia ( a információ kódolásával, továbbításával és tárolásával, ezek eszközeivel foglalkozik),…

JelA jelfajták: A jeleket a jelentésükhöz kapcsolódás módjától függően három csoportba soroljuk:Index („jelszerű” jel, vagy jelzés): A jel közvetlen kapcsolatban van a jelzett dologgal; például a kakaó illata.Ikon: A formájának ábrázolásával, előismerettől függetlenül, mindenki számára érthetően utal a jelölt dologra, például a Windows asztalán elhelyezett, számítógépet ábrázoló „sajátgép” ikon.Szimbólum: A jelentését megszokás, tanulás folytán tudjuk a jelölt dologhoz kapcsolni, például a betűk, a „behajtani tilos” tábla.

A n a l ó g é s d i g i t á l i s j e l e k : (Ld. például: analóg és digitális kijelzőjű órák.) Az analóg jel egy tartományban bármely két állapot közti minden állapotot is fel tud venni,

Page 3: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 3. oldal

„folytonos” jel. A valóság hű leírására alkalmasak.A digitális jel csak bizonyos „lépésközzel”, vagyis diszkrét értékeket vehet fel. A valóság tetszőleges pontosságú leírására alkalmasak.

Kommunikáció, magyarul közlés(folyamat). Úgy is szokás definiálni, hogy információátadás. Nemcsak az emberekre, hanem más rendszerekre is jellemző.Claude Elwood Shannon amerikai matematikus (1916-2001) vázolta fel a kommunikáció általános modelljét (1948):

Szokás ehhez a modellhez más elnevezéseket is használni:Az adót elméletileg szét lehet választani (hír)forrásra és tényleges adóra. Ekkor a (hír)forrástól az adóhoz jut a hír, az adó pedig – kódolva a hírt – közleményt (jelet) bocsát a csatornába. Ugyanígy a(z esetleg zajos) közlemény (jel) a csatornából a vevőhöz jut, amely dekódolja azt és az így keletkezett (esetleg torzított) hírt a címzetthez juttatja.A mi ábránkon a (hír)forrás és adó egyben szerepel adóként, és a vevő és címzett egyben szerepel vevőként, hiszen sok esetben ezeket nem érdemes elválasztani egymástól.

Kommunikáció sokféle van, már csak az emberek közti kommunikáció is lehet az adót és vevőt vizsgálva például interperszonális (két személy közti) és tömegkommunikáció, a csatornát vizsgálva lehet verbális (szóbeli), nonverbális, stb.A tömegkommunikáció esetén nincs élő kapcsolat, egy adó és több vevő van, az adás és vétel időben el is szakadhat egymástól, a csatornája a médium, ami latinul közvetítő közeget jelent. Konkrétan médium a tévé, a rádió, az újságok, stb. A médium többes száma: média. (A latin nyelv így jelzi a többes számot.)A multimédia pedig olyan közlésfajtát jelent, amikor a közölni kívántakat egyszerre sokféle közvetítő közegen át juttatják el a vevőhöz, szöveget, képet, mozgóképet, hangot,… felhasználva.Az emberi kommunikációról lásd a tan-könyvedet (akár a „magyar” tankönyvedet)! Az emberi kommunikáció rétegei (a metakommunikáció nélkül):(Szinte ugyanilyen a rétegfelépítést fogsz majd látni később, amikor a számítógépek egymás

közti kommunikációjáról; a számítógép-hálózatokról tanulunk:)

Metakommunikáció: a szóban átadott információ mellett sokkal többet közlünk a metakommunikáció segítségével: gesztusokkal, mimikával, stb. (Erről tanulsz nyelvtanórán is.) Írásban ezen eszközök pótlásaként használjuk az úgynevezett smiley-kat (emoticon-okat). Pl: = :)A titkosítás, titkosírás is kommunikáció, ekkor olyan kódolást: titkosítási módszert alkalmazunk, hogy a hír (jel, közlemény, üzenet) bár mások (betolakodó, intruder) számára is elérhető (nyílt szöveg, plain text), mégsem értelmezhető (nem dekódolható). A titkosított szöveget (kriptogram, cryptogram) egy kódrendszer (kulcs) segítségével alakítják ki. A titkosírás készítőjének feltételeznie kell, hogy a megfejtő ismeri a titkosítási módszert (a kulcsot). A titkosítás (rejtjelzés) és megfejtés tudományát kriptológiának (cryptology) hívják. A rejtjelezés megfejtését kriptoanalízisnek (cryptoanalysis) nevezzük.

A kommunikáció folyamán a jel(sorozat) értelmezhetőségét (a megértését, de a félreértését is) több minden befolyásolja:Szemantika és szintaxis:Az adónak a közlemény, jel(sorozat) megalkotásánál két dologra kell ügyelnie; a közlésnek ugyanis van tartalma és formája. Ahhoz, hogy érthető legyen, meg kell felelnie egyrészt a tartalmi követelményeknek (=a szemantikai szabályoknak1) és a formai követelményeknek (=szintaktikai szabályoknak2).Zajszint: Legfeljebb annyira zajos-e a csatorna, hogy a vevő még ki tudja szűrni a közleményből a zajt vagy már torzított hír érkezik hozzá?Redundancia:A közleményekben meglévő felesleges, újabb információt nem adó elem, amely nélkül azonban a megértés esetenként nehezebbé válna. Tehát a közlésben az ismétlést

1 A tartalmi, jelentéstani követelményeknek eleget tesz-e? Például ha Dezsőről beszélek nem mondok-e véletlenül helyette Pétert? 2 A formai, szerkezeti, nyelvtani követelményeknek eleget tesz-e? Például nyelvtanilag helyesen beszélek-e? Le tudom-e írni olvashatóan a betűket?

Page 4: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 4. oldal

redundanciának, az ismételt elemeket redundáns adatoknak (elemeknek) nevezzük. Van hasznos és haszontalan redundancia. A félreértés elkerülését segíti, ha a közlést, vagy annak néhány elemét megismételjük. Ezzel ellenőrizni is tudjuk, hogy az eredeti közlés helyesen történt-e.

Adat és információAdat: Valamilyen jelsorozat formájában megjelenő ismeret (tény vagy akár csak elképzelés). A „rögzített” adatok valamilyen adathordozón, adattárolón helyezkednek el.Megkülönböztethetünk elsődleges adathordo-zót (ha közvetlenül érzékszerveinkkel érzé-keljük az adatokat, például a fotónál) és másodlagos adathordozót (ha előbb át kell alakítani az adatokat az érzékszervekkel való érzékeléshez, például lemezjátszónál). Az adathordozók fontos jellemzője az elérési idő, vagyis az, hogy milyen gyorsan tudjuk "kiolvasni róluk” az információt. Korszerű adattárolók esetén ez mikroszekundummal mérhető.Az adat mértékegysége az elemi adat (item): az adatnak az a legkisebb egysége, amelyre még felbontható anélkül, hogy tartalma sérülne, vagy értelmét vesztené. (Ez persze a feldolgozó szándékától is függ…)Információ: Különféle tudományágak más- más definíciót is használnak erre a fogalomra: (aláhúztam, amiben egyformák, és árnyékoltam azt, amiben különböznek):rendszerelméleti definíció: Egy adott rendszer számára új ismeretet nyújtó jelsorozat tartalma, amit a rendszer a működéséhez felhasznál. A jelsorozat az információ megjelenési formája. Lehetséges, hogy ugyanaz a jelsorozat különböző rendszerek számára más információt hordoz.kommunikációelméleti definíció: A kommunikáció (közlés) objektív tartalma.számítástechnikai definíció: Egy adott rendszer számára feldolgozható, felhasználásra érdemes adat tartalma. Az adatokon végrehajtott műveletek eredménye, tehát értelmezett adat. Az értelmezést sokszor adatfeldolgozással (pl. adatválogatással) elő kell készíteni.Az információ egysége: Egyetlen eldöntendő kérdésre adott (igen vagy nem) válaszban rejlő információ 1 bit3. További mértékegységek: byte4 (bájt) (8 bit =1B), kilobyte (1 KB =210 Byte = 1024 B),

3 Elnevezése a binary digit (=bináris számjegy) vagy a binary unit (=bináris egység) kifejezésből ered.4 Elnevezése a by eight (=nyolcasával) kifejezésből származik.

megabájt (220 Byte =1024 KB =1 MB), gigabájt (GB). A mértékegységek elnevezése még nem következetes, az USA szabványügyi hivatala 1999-ben KiB („kibibájt”), MiB („mebibájt”), GiB („gibibájt”), TiB („tebibájt”) szabványosítást javasolt, hogy ne tévesszük össze az 1024-szerest jelentő előtagot az ezerszerest jelentő „kilo” előtaggal,… Mi azonban csak azzal különböztetjük meg a hagyományos kilo-, mega-, stb. előtagoktól, hogy nagybetűvel írjuk a rövidítésüket, ellentétben például a kisbetűs kg-mal.Az adatot tehát értelmezni kell, hogy információhoz jussunk. Ehhez viszont korábbi ismeretek felhasználásával (tudnunk kell, mi mit jelent benne) műveleteket kell végezni, vagyis az adatokat valamennyire fel kell dolgozni, hogy a benne rejlő információhoz jussunk.Például a személyi szám „megfejtése”.Egy bizonyos információ hány bitet igényel (hány biten lehet tárolni, „ábrázolni”)? Kártya és számkitalálós játék igen nem válasszal.Amekkora kitevőre kell emelni a 2-t, hogy az összes lehetőség számát megkapjuk!11. évfolyamtól: Az összes lehetőség számának (=az alapsokaság számosságának) kettes alapú logaritmusa (illetve, ha ez nem egész szám, akkor az „azt követő” egész szám).Adattároló eszközök tár(oló)kapacitása alatt azt értjük, hogy mennyi információt tud ábrázolni redundanciamentesen.Miért éppen a 2? Miért éppen igen/nem válasz? Miért eldöntendő kérdésre adott válasz? Mert kétféle választ könnyű fizikailag jelezni a számítógépben; egy magasabb és egy alacsonyabb elektromos feszültségi szinttel vagy mágnesezettséggel illetve ellentétes pólus szerinti mágnesezettséggel, stb.

S z á m r e n d s z e r e kA kétféle választ a matematika nyelvén 1-sel és 0-val jelölhetjük. A számítástechnika a kettes (bináris) számrendszert használja, amelyben e kétféle számjegy létezik. Pontosabban a túl hosszú számjegysorozatok miatt ennek néhány többszörösét is; nyolcast, tizenhatost.A számrendszer alapszáma (a mi számrendszerünk a 10-es számrendszer, ennek „alapszáma” a 10) mutatja, hogy hányféle számjegy létezik benne (0-tól 9-ig: ez éppen 10), illetve, hogy a helyiértékek mely számnak a hatványai (egyesek: 100, tízesek: 101, százasok: 102,…).Egy (természetes) szám értéke tízes számrendszerben:… + b3 103 + b2 102 + b1 10 + b0

Page 5: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 5. oldal

Egy (természetes) szám értéke tetszőleges, a alapú számrendszerben:… + c3 a3 + c2 a2 + c1 a + c0

Egy (természetes) szám értéke kettes számrendszerben:… + d3 23 + d2 22 + d1 2 + d0

Számok átváltása (konverziója) tízes számrendszerből más számrendszerbe.A definícióból közvetlenül adódó módszer mellett erre egy másik módszer: Osszuk el a számot a kívánt számrendszer alapszámával (egész osztást végezve, majd láncszerűen az eredménnyel folytatva ezt), így a kapott maradékok fordított sorrendben a kívánt alakot adják.Számok átváltása (konverziója) más számrendszerből tízes számrendszerbe.Használd (ellenőrzésre, ha gyakorlás a feladat) a Windows „Kellékei” között lévő „Számológép” alkalmazását „tudományos nézet”-ben!A kettes számrendszerben azonban viszonylag kis számoknak is nagyon hosszú alakjuk van, az emberek számára ez nehezen megjegyezhető, ezért használunk olyan számrendszereket is a számítástechnikában, amelyek nagyobb alapszámúak, és kapcsolatban vannak a binárissal: nyolcas (oktális) számrendszer, 16-os (hexadecimális) számrendszer.5

Átváltás (konverzió) olyan számrendszerek között, melynek alapszáma a másik alapszámának hatványa (például kettesből nyolcasba, tizenhatosból kettesbe).Összeadás, kivonás, szorzás más számrendszerben.Számolás közben néhány megfigyelésre tettünk szert (ezek matematikai tételek, de nem bizonyítottuk be mindet): Ha a számrendszer alapszámával

szorzunk egy számot, a végére egy nulla kerül. (És ha osztjuk? A törteknél majd gondolj erre!)

A számot kisebb alapszámú számrendszerbe írjuk át, akkor az alakja általában hosszabb lesz (vagy esetleg egyenlő hosszúságú).

Más számrendszerekben is vannak törtek, csak nem „tizedes törtek”, hanem „kettedes” törtek, „harmados törtek”, stb. Tizedesvessző helyett tehát „kettedes vesszőt” vagy „bináris vesszőt” kellene mondanunk, azonban az angolszász országokban elterjedt módszer szerint sajnos inkább „pontot” mondunk.Kettes számrendszerben tehát a vessző utáni helyiértéken nem a tizedek, hanem a felek (egykettedek) állnak, utána a negyedek, majd a nyolcadok, stb6:például:

5 Ma már a számítástechnikában csak a bináris és hexadecimális rendszert használják.

1 1 0, 1 0 1ennek értéke tízesben: 4+2+1/2+1/8=6,625

A d a t á b r á z o l á s a s z á m í t á s t e c h n i k á b a n

Ahhoz, hogy valamilyen információt rögzíteni tudjunk, adattá kell alakítani (jelsorozattá kell változtatni, kódolni kell).Követelmények a kódolással szemben: egyértelmű és visszafejthető legyen, a formája hatékony tárolást és feldolgozást tegyen lehetővé.A kódolás szabályait az általa használt jelekkel együtt kódrendszernek nevezzük.Ugyanazon tartalmú adatok átírását egy másik kódrendszer szerinti alakba (adat)konverzió-nak vagy (adat)konvertálásnak nevezzük.Az adatok „számítógépen belüli” megjelenítéséhez használt kódrendszer(eke)t – a szabályokkal, jelekkel, és az így kialakított jelsorozatokkal együtt – (belső) adatábrázolásnak nevezzük.Mivel kétféle jelet könnyű fizikailag jelezni a számítógépben (egy magasabb és egy alacsonyabb elektromos feszültségi szinttel vagy mágnesezettséggel illetve ellentétes pólus szerinti mágnesezettséggel, stb.), az elektronikus digitális számítógépek a rögzítendő adatokat bináris szám formájában jelenítik meg (=ábrázolják).Egy (bináris) számjegy tárolására 1 bit szolgál, amit kétállapotú tárolóval valósítanak meg. Tehát „1 biten” kétféle jel (az 1-nek és a 0-nak megfelelő) ábrázolható, 2 biten 22=4 féle jel (00, 01, 10, 11), …, n darab biten pedig 2n-féle jel ábrázolható.(1 bájton hányféle jel ábrázolható?)

Számábrázolás

F i x p o n t o s s z á m á b r á z o l á s A „fixpontos” elnevezés a bináris pont fogalmat tartalmazza az elnevezésében, ennek van fix helye: Egészek ábrázolásánál mindig a bináris jelsorozat végére képzeljük a pontot. Tehát, ha 1 bájtunk van a szám ábrázolására, akkor az ábrázolandó szám kettes számrendszerbeli alakját elhelyezzük a 8 biten, a végére képzelve a „kettedes” pontot. Például az 5 szám esetén (510 = 1012):0 0 0 0 0 1 0 1

Természetesen így 1 bájton 0-tól 255-ig ábrázolhatók a számok, ez éppen 256 (=28) szám.

6 Vagyis a 2 hatványai következnek továbbra is helyiértékekként szépen egymás után: … 23, 22, 21, 20, 2-1, 2-2, 2-3, …

Page 6: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 6. oldal

Nemnegatív egész ábrázolása 1 bájton, két bájton.Ha negatív számokat is akarunk ábrázolni, akkor például a következő két módszer közül választhatunk:Előjelbites ábrázolás:Az első bitet fenntartjuk az előjel ábrázolására (0-val jelöljük a pozitív előjelet, 1-sel a negatívat). A maradék biteken a szokásos módon ábrázoljuk a számok abszolút értékét.Például a –5 kódja:1 0 0 0 0 1 0 1

1 bájtot felhasználva 7 biten 27=128 darab számot, vagyis 0-tól 127-ig tudjuk ábrázolni a számokat, így előjelbittel együtt az ábrázolható számok: a [-127;-0] U [+0;+127] intervallum7

egész számai!Vagyis a nulla kétféleképpen is ábrázolódik ezzel a módszerrel! Ez egyébként ismét kétszer 127 + a kétféle 0, azaz 256-féle szám. (Hiszen most is 1 bájtunk volt!)Egész számok előjelbites ábrázolása 1 bájton, 2 bájton.Előjelbites alakból a szám meghatározása.Ennek az ábrázolási módnak az a másik8

hibája, hogy a szabályos bináris műveletek végrehajtásával nem ad helyes eredményt.9

Lehet hozzá olyan számolási módszert kitalálni (pl. más összeadási szabályokat), amivel mindig helyes eredményt kapnánk, de úgy bonyolult lesz a műveletvégzés!

Kettes komplemens kód 10 :Ez egy olyan módszer, ahol nincs „dupla nulla ábrázolás”, és egyszerűen végrehajthatóak a műveletek (mert a szabályos bináris műveletek helyes eredményt adnak), viszont nehezebb megmondani, hogy mi lesz egy szám kódja:Nemnegatív szám kódja a kettes számrendszerbeli alakja, negatív számoknál pedig a következőt kell csinálni:Vedd az abszolút értékének a bináris alakját! Minden bitjét fordítsd az ellenkezőjére! (Ezt az alakot nevezik egyes komplemens kódnak.)Ezután adj hozzá egyet a bináris összeadás szabálya szerint! (Ezt nevezik kettes komplemens kódnak.)Például az 5 szám esetén (510 = 1012):0 0 0 0 0 1 0 1

a - 5 esetén:0 0 0 0 0 1 0 1

7 Figyelj! A matekórán használt intervallumjelölést használtam!8A kétféle nulla-ábrázoláson kívül…9 Próbáld ki például, hogyha „simán” összeadsz két előjelbites számot, helyes előjelbites számot kapsz-e eredményül! Pl. 5+(-5) eredménye így mennyi lenne?10 Neumann János által kitalált módszer.

1 1 1 1 1 0 1 0+ 1

1 1 1 1 0 1 1 Az így ábrázolható számtartomány a [-128;+127] egész számai (azaz 128 darab negatív szám, a nulla, és 127 darab pozitív szám, ami összesen 256 darab szám, hiszen 1 bájtunk van rá).Egész szám kettes komplemens kóddal való ábrázolása 1 bájton, 2 bájton.E módszer szerint (is) a negatív számok kódja 1-sel kezdődik! A nemnegatívaké 0-val.És hogyan tudjuk megmondani, melyik számé egy bizonyos kettes komplemens kód? Az érdekes (és nagyszerű), hogy ugyanezt mégegyszer elvégezve meg tudod fejteni, melyik számról van szó.Kettes komplemens alakból a szám meghatározása.Ez egy olyan ügyesen kitalált kódolás, hogy itt használhatod a szabályos bináris műveleteket számolásra: helyes eredményt fognak adni!Összeadás, kivonás (a kivonást a mínusz egyszeresének hozzáadásával végezzük el) 1 bájton, 2 bájton kettes komplemens kódban.Szorzás kettővel, néggyel („balra léptetés, shift left”).A mai processzorok a negatív számok ábrázolására a kettes komplemens kódot használják.

Túlcsordulás (overflow): Kódolás és műveletvégzés közben a legmagasabb helyiérték kiszámítása után még képződhet olyan adat, amit „tovább kellene vinni” a következő helyiértékre (ami viszont nincs); ezt nevezzük túlcsordulásnak. Ez az adat elveszik, mert a tárolására nincs hely.Ha az eredmény az ábrázolható intervallumon belül van, akkor ez (kettes komplemens alaknál) nem okoz problémát, mert így jól működik, sőt: így működik jól!Viszont, ha a számok (vagy műveletvégzés esetén az eredmény) kívül esnek az ábrázolható intervallumon, ez hibát fog okozni!Vagyis egy számítógépes program megírásakor nagyon meg kell gondolni, hogy hány bájtot szánnak a számok ábrázolására, és nem szabad megengedniük, hogy a program annál nagyobb számokkal dolgozzon (hiszen akkor hibás eredmények születhetnek)!

„Egészosztás” kettővel, néggyel (jobbra léptetés, shift right”). Ezt a műveletet általában a DIV rövidítéssel jelölik. „Alulcsordulás”, ez is egyfajta túlcsordulás.

Page 7: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 7. oldal

L e b e g ő p o n t o s s z á m á b r á z o l á s Akkor szükséges, ha nemcsak egész számokat akarunk ábrázolni.Az ábrázolás módja a matematikában tanult normálalak elvén alapul, bár itt kissé máshogyan használják. Induljunk ki abból, hogy minden tizedes törtet fel tudunk írni egy”nulla egész …” alakú szám és 10 valamelyik hatványának szorzataként. Például:6,356 = 0,6356 101 (10=101)-102,4 = -0,1024 103 (1000=103)0,3333 = 0,3333 100 (1=100)0,0007 = 0,7 10-3 (1/1000=10-3)

Ez a lebegőpontos (floating point) ábrázolás elnevezésének oka: a tizedesvesszőt (tizedespontot) mozgatjuk, amikor ezt az alakot létrehozzuk.Hasonlóan a bináris számokat is felírhatjuk ”nulla egész …” alakú szám és 2 valamelyik hatványának szorzataként:1,101 = 0,1101 21 0,1101·21

-100,1 = -0,1001 23 -0,1001·211

0,1111 = 0,1111 20 0,1111·20

0,0001 = 0,1 2-3 0,1·2-11

A bekeretezett rész tartalmazza a négy számot. De te akkor is tudnád, hogy melyik négy számról van szó, ha csak a vastaggal írt számokat és a kitevőket mondanák meg, hiszen a többi mind a négynél azonos, azt te magadtól is hozzá tudod tenni.A számítástechnikában a vastaggal írt részt mantisszának (esetleg szignifikánsnak), a kitevőt pedig karakterisztikának vagy exponensnek nevezik.Melyik szám az, ahol a mantissza 100000111, a kitevő pedig 111? Ez a szám nyilván a 0,1000001112111 = 1000001,11 = 65,7510

Vagyis: ahhoz, hogy egy valós számot ábrázoljunk, ezt a két egész számot (a mantisszát és a kitevőt) kell ábrázolni. Egészeket pedig tudunk ábrázolni fixpontos ábrázolással!Például: Ha valós számok ábrázolására 3 bájtot használunk, akkor abból például az első 16 biten ábrázoljuk a mantisszát fixpontos ábrázolással (negatív is lehet), majd a maradék 8 biten a kitevőt (ez is lehet negatív is) fixpontos ábrázolással. Pl. 65,75-nél:0000000100000111 00000111

E g y é b k ó d r e n d s z e r e k Léteznek más, például nem személyi számítógépeken, hanem „nagygépes” környezetben, inkább régebben használt kódrendszerek, például a BCD-kód (binárisan kódolt decimális kód, 6 bites), EBCDIC-kódrendszer (kiterjesztett BCD-kód, 8 bites).

KarakterábrázolásKaraktereknek vagy alfanumerikus adatoknak nevezzük a kis- és nagybetűket, ékezetes betűket, más nyelvekben használt betűket (=„nemzeti karakterek”), írásjeleket, számjegyeket, műveleti jeleket, pénznemek jeleit, vezérlőjeleket, grafikus jeleket, egyéb speciális jeleket.

A S C I I k ó d r e n d s z e r (American Standard Code for International Interchange)Kezdetben 7 biten ábrázolták a karaktereket, így 128 féle karaktert valósíthattak meg. A 0-tól a 127-ig terjedő számok bináris alakjai mind egy-egy karaktert jelentenek, a szóköz például a 32-es kódú karakter, vagyis a 0010000 a szóköz kódja.0 és 31 közti kódok a vezérlőkaraktereket (pl: CR, LF11) tartalmazzák,32-től 47-ig írásjelek, műveleti és egyéb jelek,48-tól 57-ig a számjegyek (0,…9),58-tól 64-ig más írásjelek, reláció jelek és a @,65-től 90-ig az angol ábécé nagybetűi,91-től 96-ig ismét egyéb jelek,97-től 122-ig az angol ábécé kisbetűi,123-127-ig ismét egyéb jelek találhatók.

Nézd meg a tankönyvedben!

A N S I k ó d r e n d s z e r (American National Standards Institute)Ez a 128 karakter később kevésnek bizonyult, hiszen nem férnek bele a nemzeti karakterek sem. Ezért a karakterek ábrázolására több helyet: 8 bitet (1 bájtot) szántak, így már 256 féle karakter vált alkalmazhatóvá. De az első 128-at nem bolygatták, hanem kibővítették az eddigi kódtáblát másik 128 karakterrel. Többféle kiegészítés is létezik, tekintettel a nemzeti karakterekre és az operációs rendszerekre, így például léteznek a következő (256 elemű) kódtáblák:437-es (USA) kódtábla: többféle nemzeti karakterrel, grafikus jelekkel,852-es (Latin II vagy Szláv) kódlap: a magyar, lengyel, cseh ábécék latin betűktől eltérő betűit és grafikus jeleket tartalmaz,CWI: magyar kódkészlet DOS-hoz.

U n i c o d e r e n d s z e r 16 bitet használó rendszer, tehát 216 (több, mint 65000 !) féle karakter ábrázolására képes. Kompatibilis az ASCII kódtáblával (az első 128 jel mindkettőben ugyanaz), tartalmazza a ma

11 CR: carriage return= „kocsi vissza, LF: line feed=soremelés.

Page 8: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 8. oldal

használt nyelvek (sőt több holt nyelv) karaktereit (még ógörög, héber, arab, tibeti, tamil, kínai-koreai-japán, cirill és további betűket is), egyéb grafikus karaktereket, törtszámok jeleit, stb.Ezt a kódtáblát még nem minden, de egyre több szoftver használja, például a Windows NT, vagy az MS Office a 97-estől kezdve.

SzínábrázolásHa csak annyit akarunk meghatározni, hogy a képernyő egy adott képpontján megjelenjen-e pont vagy ne (mert monochrom monitorunk van, ami csak egy színt ismer), akkor ennek ábrázolására elég 1 bit.„Szürkeárnyalatos” ábrázolás esetén 256 féle szürke árnyalat valósítható meg 1 bájton (8 biten, 28=256).Színes monitor esetén azonban azt is meg kell határozni, milyen szín jelenjen meg. A lehetséges színválasztékban szereplő színek számát színmélységnek nevezzük.Ahhoz, hogy a képernyőn vagy nyomtatásban a megfelelő színeket lássuk, minden színnek rendelkeznie kell egy (bináris) kóddal, hogy a számítógép használni tudja. De milyen kód (bináris szám) tartozzon a különböző színekhez? Ha elegendő számunkra 256 szín, akkor egy szín tárolásához 8 bitre, 1 bájtra van szükségünk. A 16 biten ábrázolt színrendszert high color-nak12 hívják (216 féle színárnyalat).Ma már a számítógépek ennél sokkal nagyobb színmélységgel dolgoznak. A különböző színárnyalatokhoz tartozó kódok kiala-kításához segítséget nyújt a fizika néhány megállapítása:Az ember számára látható látható fény az elektromágneses sugárzás 380-780 nanomé-ter hullámhosszú tartománya (az infravörös és az ultraibolya között, a vöröstől az ibolyáig).Bármely szín „kikeverhető” három különböző (alap)színből.Azt, hogy milyen színt látunk, három dolog határozza meg:Színezet vagy árnyalat (ez attól függ, hogy a fénynek – mint sugárzásnak – mekkora a hullámhossza), angolul hue.Telítettség (attól függ, hogy mennyi a fényben a tiszta fehér fény aránya, „mennyire fakó” a szín), angolul saturation.Fényerő vagy világosság (a sugárzás erősségétől, energiájától függ), angolul intensity, brightness vagy luminance.(Ez a HSB rendszer, amivel a tévé beállí-tásakor is találkozol.)

12 Angolul a szín colour, de amerikaiul color!

R G B s z í n r e n d s z e r Ez a (számítógép, tévé) képernyők által alkalmazott színkeverés. A három alapszín, a vörös (Red), zöld (Green) és kék (Blue) „egymásravetítésével” jön létre a kívánt szín. (Ezért ezt a színkeverést „additív”, vagyis hozzáadó színkeverésnek nevezik.) Ha mindhármat „maximális mennyiségben” vetítjük, akkor fehér fényt kapunk, ellenkező esetben feketét.Ebben a színrendszerben 3 bájtot szánunk a színárnyalat meghatározására: 1 bájton rögzítjük, hogy mennyit keverjünk bele a vörösből, 1 bájton, hogy mennyit a zöldből, és 1 bájton, hogy mennyit a kékből. Ez összesen 3 bájt, vagyis 24 bit, tehát 224 féle színárnyalat lehetséges, ami kb. 16 millió (16 777 216) különböző színt tesz lehetővé.A 24 bites színrendszert true colorként emlegetik.Próbáld ki: Paint / Beállítások / Színek szerkesztése

C M Y K s z í n r e n d s z e r Ez a diaképnél, fényképnél, nyomtatónál előforduló módszer; itt szubsztraktív, vagyis kivonó, elvonó színkeverés valósul meg: A fényforrásból jövő fehér fény elnyelődik a tárgyra kent különböző festékrétegekben (különböző színű festékanyagok más összetevőket nyelnek el belőle), ami megmarad, az jut a szemünkbe. Az elnyelő rétegeket kékeszöldből (Cyan), lilásból (Magenta) és sárgából (Yellow) alakítják ki. Mivel a gyakorlatban ez a három réteg sem tud mindent elnyelni, ahhoz, hogy tökéletes feketét is láthassunk, negyedik alapszínnek hozzávették még a feketét (blacK) is.Ha ebben a színrendszerben is minden alapszínre 1 bájtot szánunk, az összesen 4 byte=32 bit, 232 féle színárnyalat, pedig az emberi szem már 16 millió árnyalatot sem tud megkülönböztetni! (Technikai szempontból mégis így használjuk, hiszen az 1 bájt olyan egység, aminél a számítógép kisebb egységet nem kezel „egy lépésben”.Megjegyzés: A használható színmélység függ a számítógép videókártyájától (grafikus kártyájától), hiszen az általa használt memória területén tárolja a képpontok színével kap-csolatos információkat. Minél nagyobb a színmélység, annál nagyobb memória szükséges a képpontok színének tárolásához.

HangábrázolásA hang (hanghullám) analóg jel. Ahhoz, hogy a számítógépben ábrázolni tudjuk, a hanghoz bináris kódot kell hozzárendelni (digitálissá kell alakítani), ezt a hangkártya végzi el.

Page 9: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 9. oldal

A hanghullám szinuszgörbék „összege”, ha az amplitúdó („kilengés”) időben való változását akarjuk ábrázolni, egy görbét kapunk, ezt kell kódolnunk.„Mintavételezés”-hez folyamodunk; időnként13

megállapítjuk, mekkora a görbe amplitúdója:

A mért amplitúdókat egész számra kerekítve bináris számmá alakítjuk, és az így nyert számsorozattal ábrázoljuk a hangot. Ezt az átalakítást (és a fordítottját) végzi el a hangkártya.

M a t e m a t i k a i l o g i k aA matematika egyik ága a matematikai logika, amelyet egy matematikusról Boole-algebrának is neveznek. A számtan számokkal, a halmazelmélet halmazokkal, … a matematikai logika ítéletekkel végez mű-veleteket.Ítéletnek nevezzük az olyan állításokat, amelyekről egyértelműen eldönthető, hogy igazak-e vagy hamisak (Az ítéleteket nagybetűkkel jelöljük.) Például:A=„Magyarország fővárosa Budapest.” Ez egyértelműen igaz, tehát ítélet.B=„Békés megye székhelye Szeged.” Egyértelműen hamis, tehát ez is ítélet.C=„Hétfő van.” Vannak napok, amikor ez igaz, vannak napok, amikor hamis, de mindig egyértelműen eldönthető. Ez is ítélet.De nem minden állítás ítélet, hiszen próbáld meg a következő állításokról eldönteni, hogy igazak-e vagy hamisak:”A magyar király szőke.” Nincs is magyar király! Hogyan tudnánk akkor megállapítani, hogy szőke-e! Ez nem ítélet.„Rövidesen tanítási szünet lesz.” Mi számít rövidesennek? Nem egyértelmű. Ez sem ítélet.”Ez a mondat hamis.” Ha jól meggondolod, kiderül, hogy ez egy paradoxon. Ez sem ítélet.

Tehát a matematikai logikában kétféle érték van: igaz és hamis.Mivel a számítástechnikában is csupán kétféle számjegy (0 és 1) segítségével ábrázolunk minden adatot, a matematikai logikát felhasználhatjuk a számítástechnikában, ha a

13 Másodpercenkét több mint tízezerszer veszünk mintát! A 11kHz-es hangkártyák kb. 1/11000 másodpercenként, a 22 kHz-esek 1/22000 másodpercenként, a 44 kHz-esek…

logikai igaz értéket megfeleltetjük az 1-esnek, a hamisat a nullának. A matematika különböző területein megvannak a műveletek: A számtanban (aritmetikában) a számtani műveletek (összeadás, szorzás,…), halmazelméletben a halmazműveletek (unió vagy egyesítés, közös rész képzés vagy metszetképzés, …). A logikában pedig a logikai műveletek: NEM, ÉS, VAGY,…A logikai műveleteket használják a számítástechnikában az 1-esekkel és nullákkal való műveletek elvégzésére14. A számítógép áramköreiben úgynevezett logikai kapuk végzik el az 1-esekkel és a nullákkal15 a műveleteket. A logikai kapuk olyan elektronikai alkatrészek, amelyeknek 1 vagy 2 bemenetük és 1 kimenetük van.Különféle logikai kapuk vannak aszerint, hogy milyen műveletet végeznek: NEM-kapu, ÉS-kapu, VAGY-kapu,…

NEM műveletDefiníció: A NEM (NOT, negáció) művelet az a logikai művelet, amely az ítélet logikai értékét az ellenkezőjére változtatja.Például: Ha az „A”-val jelölt ítélet az, hogy „esik az eső”, akkor a „nem A” azt jelenti: „nem esik az eső”. Így ha az „A” igaz volt, akkor a „nem A” hamis lesz, és fordítva; ha az „A” hamis volt, akkor a „nem A” igaz lesz.Többféle műveleti jelet is szoktak használni a NEM műveletre („A” ítélet esetén): NOT A, ¬A, Ā, NEM A.A NOT művelet definícióját megadhatjuk „igazságtáblázattal” is:

A NOT A vagy: A NOT Ah i 0 1i h 1 0

A NEM-kapu tehát egy olyan elektronikai alkatrész, amelynek egy bemenet és egy kimenete van; 1-es bemenő jel esetén nullát bocsát ki, nulla bemenő jel esetén pedig 1-est. Az NEM-kapu jelölése:

ÉS műveletDefiníció: Az ÉS (AND, konjunkció, szorzás) művelet eredménye igaz, ha mindkét ítélet

14 Shannon ismerte fel az elektromos kapcsolások és a matematikai logika közti összefüggést.15 Pontosabban az 1-eseknek és a nulláknak megfelelő jelekkel…

Page 10: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 10. oldal

logikai értéke igaz, minden más esetben hamis.Például: Ha az „A”-val jelölt állítás az, hogy „esik az eső”, a „B” állítás pedig az, hogy „hétfő van”, akkor az „A ÉS B” állítás csak akkor igaz, ha hétfő is van, és az eső is esik.Az ÉS műveletre használatos műveleti jelek (sokféle jelölést használnak): A AND B, A ٨ B, A & B, A ÉS B, A * B, AB.

A definíció táblázattal: A B A AND B0 0 00 1 01 0 01 1 1

Vagy egy más formájú AND 0 1táblázattal: 0 0 0

1 0 1

Az ÉS-kapu tehát egy olyan elektronikai alkatrész, amelynek két bemenete és egy kimenete van; a két bemenő jelből 1-est állít elő, ha mindkét bemenő jel 1-es volt, minden más esetben pedig nullát. Az ÉS kapu jelölése:

VAGY műveletDefiníció: A VAGY (megengedő vagy, OR, diszjunkció, összeadás) művelet eredménye hamis, ha mindkét ítélet logikai értéke hamis, minden más esetben igaz.Például: Ha az „A”-val jelölt ítélet az, hogy „esik az eső”, a „B” pedig az, hogy „hétfő van”, akkor az „A VAGY B” összetett ítélet igaz, ha legalább az egyik ítélet igaz volt.A VAGY műveletre használatos műveleti jelek: A OR B, A v B, A VAGY B, A + B.

Műveleti táblája: A B A OR B0 0 00 1 11 0 11 1 1

Vagy egy más formájú OR 0 1táblázattal: 0 0 1

1 1 1

Milyen elektronikai alkatrész a VAGY-kapu?

A VAGY kapu jelölése:

Az eddig felsorolt műveleteket (NEM, ÉS, VAGY) nevezzük alapvető logikai műveleteknek vagy egyszerűen alapműveleteknek. A NEM egyváltozós, az ÉS és a VAGY pedig kétváltozós logikai művelet.Milyen tulajdonságúak ezek a műveletek? (Kommutatívak-e: A & B = B & A ?A or B = B or A ? Asszociatívak? Egységelemesek? Inverzelemesek?)

Logikai kifejezésekEgy (matematikai értelemben vett) kifejezés tartalmazhat konstansokat, változókat, műveleti jeleket, zárójeleket, bizonyos szintaktikai szabályok szerint. (Matematika órán találkoztál például algebrai kifejezésekkel, amelyben szerepeltek számok, számokat jelölő betűk, műveleti jelek és zárójelek.) A logikai kifejezésekben pedig logikai értékek, ítéleteket jelölő betűk, logikai műveleti jelek és zárójelek szerepelnek.A műveletek többféle elnevezése és a sokféle műveleti jel abból adódik, hogy máshoz szoktak a fizikusok és a matematikusok, máshoz az amerikaiak és az európaiak. Össze-vissza azonban ne keverjük őket, ebben igazítanak el a következő, példaként szolgáló logikai kifejezések (mind ugyanazt a kifejezést írják le, csak más műveleti jel rendszer szerint):( A + B) + A + AB( A v B) v ¬A v ¬(A ٨ B)(A or B) or not A or not(A and B)

A kifejezések értékének kiszámítása (a kifejezések kiértékelése) szabályok szerint történik. Számtanból tudod például, hogy először a zárójelben lévő műveleteket kell elvégezned, és a szorzást előbb kell elvégezni az összeadásnál. A sorrendet tehát a zárójelezésen kívül a műveletek prioritása (elsőbbsége, sorrendje) határozza meg:

Műveleti sorrendA számtani műveletek prioritása:

1. hatványozás, gyökvonás2. szorzás, osztás3. összeadás, kivonás

A logikai műveletek prioritása:1. not2. and, or,

Page 11: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 11. oldal

ha nincs máshogyan zárójelezve. Ha a zárójelek és a műveletek prioritása még nem döntené el egyértelműen a sorrendet, akkor harmadik szabályként a „balról jobbra haladást” tartjuk be.

Logikai azonosságokA matematika más ágaihoz hasonlóan itt is léteznek azonosságok16;egyszerűbbek is, amelyek a műveleti tulajdonságokból azonnal látszanak, például:A and 0 = 0, A or 1 = 1,és összetettebbek is (például az ún. De Morgan azonosságok):(A and B) or C = (A or C) and (B or C)(A or B) and C = (A and C) or (B and C)not (A and B) = (not A) or (not B)not (A or B) = (not A) and (not B)Az azonosságokat persze – mint a matematikában már láttad – be lehet bizonyítani, még továbbiakat is.

Néhány további logikai műveletA három alapműveleten kívül további műveletek is léteznek, amelyeket szintén a műveleti táblájukkal definiálunk. (Összesen hány kétváltozós logikai művelet lehetséges? Vagyis hány különböző igazságtáblázat van?)A három alapvető logikai műveletből kialakított összetett műveletekkel minden további logikai művelet kifejezhető. Tehát bármilyen műveletet, számítást elvégző áramkör felépíthető NEM-kapuk, ÉS-kapuk, VAGY-kapuk megfelelő összeépítésével.

A KIZÁRÓ VAGY (antivalencia, e x clusive or , XOR ) művelet eredménye akkor és csak akkor igaz, ha a két állításnak különböző volt a logikai értéke.Ezt a műveletet a magyar nyelv úgy fejezheti ki, hogy mindkét állítást tartalmazó tagmondat elé „vagy” szót illeszt, például: „Vagy moziba megyünk, vagy matekot tanulunk.” (Ez az összetett állítás csak úgy lehet igaz – mivel mindkettőt egyszerre nem lehet csinálni, hiszen kizárják egymást – hogy a két állítás közül valamelyik igaz, a másik hamis.)

A definíció táblázattal: A B A xor B0 0 00 1 11 0 11 1 0

Az implikáció (következmény, „ha…akkor…”) művelet eredménye akkor és csak akkor

16 Mit nevezünk azonosságnak?!

hamis, ha A igaz és B hamis (minden más esetben igaz).A magyar nyelvben ehhez közelálló szerkezet a „Ha A akkor B” típusú összetett állítás, például: „Ha van tollam, akkor tudok jegyzetelni.” Ennél a műveletnél azonban a matematika és a köznapi gondolkodás nem áll olyan közel egymáshoz, mint az előbbieknél.

A definíció táblázattal: A B A imp B0 0 10 1 11 0 01 1 1

Természetesen e további műveletekkel is léteznek azonosságok, például:A xor B = (not A and B) or (A and not B)A imp B = not A or B

Be tudnád ezeket az azonosságokat bizonyítani?

A logika alkalmazásaa számítástechnikában

Egy „hardveres” és egy „szoftveres” példát nézzünk meg arra, miként lehet használni a logikát a számítástechnikában:1. A következő példán érzékeltetjük, hogyan építik fel a processzor áramköreit:Ha processzort akarunk építeni, tudnunk kell, mit várunk el tőle, eltervezzük, hogy a bemenő (1-esekből és nullákból álló) jelsorozatokra milyen kimenő jelsorozatokat kell adnia eredményül.Például, ha egy kettes számrendszerbeli szám utolsó számjegyeit akarjuk vele összeadatni, és meg kell mondania, hogy mi lesz az eredmény utolsó számjegye, akkor tudjuk, hogy0,0 bemenet esetén 0-t,0,1 bemenet esetén 1-t,1,0 bemenet esetén 1-t,1,1 bemenet esetén 0-tkell szolgáltatnia eredményül.Ezután megkeressük, hogy ilyen eredményt milyen alapvető logikai műveletekből álló logikai kifejezés szolgáltat (ha kell, használjuk az igazságtáblát, az azonosságokat).Látjuk, hogy ezt épp az A XOR B művelet valósítja meg! Az azonosságokból pedig látjuk, hogy ez alapműveletekkel kifejezve:=(not A and B) or (A and not B)Így már összeépíthetjük NOT-, ÉS-, VAGY-kapukból a logikai kifejezésnek megfelelő áramkört:

Page 12: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 12. oldal

Ezt az áramkört beépítve a processzorba máris képes lesz elvégezni két bináris szám utolsó számjegyeinek összeadását. Természetesen egy teljes összeadó áramkör ennél bonyolultabb.

2. Különböző alkalmazásokban szükség lehet arra, hogy olyan összetett utasításokat adjál, amelyben logikai műveletek szerepelnek. Például ha egy cégjegyzékből ki kell íratni a budapesti vagy békéscsabai KFT-ket, akkor „fogalmazhatsz” így: név=*KFT. AND (székhely=Budapest OR székhely=Békéscsaba).

Page 13: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 13. oldal

S z á m í t á s t e c h n i k aSzámítástechnika: Az a tudomány, amely a számítógépeken kívül, az azokkal megoldható problémákkal és megoldási módszereikkel foglalkozik.Számítógép: Olyan műszaki rendszer, amely képes adatok tárolását, feldolgozását, visszakeresését elvégezni emberi beavatkozás nélkül, a benne előzőleg elhelyezett program működtetésével.A számítógép alapvető tulajdonságai: univerzális (=általános célú), digitális, programvezérelt, automata17.A számítógépet és annak használatát rendszerként a következő elemekre bonthatnánk: hardver, szoftver, orgver (a számítógépek szervezési környezete), menver (a használó ember).Hardver: A számítógép mint műszaki, fizikai, kézzelfoghatóan létező rendszer.Szoftver: A számítógép működtetéséhez szükséges szellemi termékek; a programok, de az adatok és a dokumentációk is.Program: A számítógép számára érthető kódolt formában tartalmazza azokat a lépéseket, amit a számítógépnek végre kell hajtania, hogy az általunk kívánt feladatot megoldja.

A s z á m í t á s t e c h n i k a t ö r t é n e t e

A számítógépek elődei a különböző számolási segédeszközök voltak.Ókori találmány az abakusz, amely mozgatható golyókból állt. Legkorábban a mezopotámiaiak, később a görögök, perzsák, rómaiak is használták, de különféle változatokban, drótokon húzható golyók vagy táblára vésett vájatokban rakosgatható kavicsok18 formájában. (A szorobán is ennek egyfajta változata.) Az összeadást és a kivonást lehet vele elvégezni.Már a középkor kezdetétől ismertek jó módszert a szorzás könnyű elvégzésére, ennek alapján készített segédeszközt John Napier (skót tudós, XVI.sz.), amely Napier-pálcák néven terjedt el. (Ennek utóda volt a logarléc, amelyet egészen a mai, elektronikus számológépek megjelenéséig használtak.)

17 Az automata itt nem önműködőt jelent, hanem (matematikai értelemben) olyan dolog, amely bemenő jelek (input) hatására a belső állapotának megfelelően kimenő jeleket (outputot) állít elő.18 A kavics latinul: calculus !

Pioneers of ComputingWilhelm Schikard (1623-ban)

a Napier-pálcák felhasználásával, fogaskerekekkel működő, négy alapműveletet végző számológépet készített, hogy megkönnyítse a hajózáshoz szükséges csillagászati számításokat.

Blaise Pascal (XVII. sz.)

francia művész, matematikus, fizikus, filozófus 19 éves korában összeadó–kivonó gépet épített, hogy adófelügyelő apját segítse munkájában. Róla nevezték el a Pascal-háromszöget, a nyomás SI19 mértékegységét, és a Pascal programozási nyelvet. Ez a gép későbbi, és kevesebbet is tud, mint Schikardé, de sorozatban (7 példány!) készült.

Gottfried Wilhelm Leibniz (XVII-XVIII. sz.)

eredetileg jogász végzettségű filozófus, matematikus, fizikus négy alapműveletes mechanikus számológépet szerkesztett (Pascal gépének továbbfejlesztésével), amely szintén fogaskerekekkel működött. Javasolta a kettes számrendszer használatát.

19 SI = System International, a mértékegységek nemzetközi szabványrendszere, amit azért alkottak meg, hogy ne különbözőképpen (például rőfben, hüvelykben, lábban) mérjünk, hanem egységesen (például méterben). Még ma sem használjuk következetesen…

Page 14: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 14. oldal

Charles BABBAGE (XIX. sz. első fele, az ipari forradalom kora)

összeférhetetlen jellemű angol matematikus, csillagász és feltaláló a számolótáblázatokat (függvénytáblázatokat) helyettesítő difference engine-t („differenciagépet”) hozott létre, amely az eredményeket acéltűvel rézlemezre ütötte. Rengeteg pénzt és energiát szánt egy általános célú gép („analitikus gép”) kifejlesztésére, amelynek jó tervét nem tudta megvalósítani, mert a kor technikai fejlettségének megfelelő eszközökkel nem lehetett elég precíz alkatrészeket előállítani. A mai számítógépekhez hasonló felépítést tervezett: lyukkártya-olvasó, „malom”=CPU, „tár”=memória, nyomtató, az előre elkészített programot lyukkártya tartalmazta. Erre a (sosem működött, de tökéletesen dokumentált) gépre írt programokat Ada Byron, Lady Lovelace20 (XIX. sz. első fele, Byron lánya)!Érdekes, hogy tulajdonképpen rendszerelmélettel (és logisztikával) is foglalkozott már e tudományágak kialakulása előtt, amikor a brit posta számára rendszerelemzést végzett a díjszabás kialakítása céljából.

Hermann Hollerith (XIX-XX. sz.)

az 1890-es amerikai népszámlálás adatait dolgozta fel 6 hét alatt elektromos lyukkártya olvasójával. (Az 1880-as adatokat csak 1887-re tudták feldolgozni, pedig akkor még sokkal kevesebben voltak!) Ő alapította az IBM céget.

20Tehát az első programozó egy nő volt, az ADA programozási nyelvet neveztük el róla.

Konrad Zuse

berlini mérnök(hallgató) 1938-ban relés memóriájú, villanykörte-sorozat formájú kijelzőjű, bináris, jelfogós (tehát nem mechanikus!) számítógépet készített. 1941-re kiegészítette lebegőpontos aritmetikával. Ez volt az első megvalósult programvezérelt gép, amely a tárolt program elvével működött. Az első digitális rajzgépet is ő hozta létre. Saját kis cége gyártotta találmányait, ezt később megvette a Siemens. Zuse nem ismerte az előtte épített számítógépeket, és az ő gépét sem ismerték mások, mert munkája Berlin bombázásakor (1944) elpusztult. Ezután csak matematikával; automatákkal foglalkozott.

A második világháború fokozta a számítógépek iránti érdeklődést; az angolok kódfejtéshez, az amerikaiak logisztikai feladatokhoz, a németek röppályaszámításhoz (pl. V1, V2) szerették volna alkalmazni,...

Norbert Wiener

18 éves korában doktorátust szerzett, a ma legidőszerűbb tudományokkal foglalkozott: kommunikáció- és információelmélettel, kibernetikával, mesterséges intelligenciával.Wiener 1940-ben megfogalmazta a korszerű számítógép alapelveit: aritmetikai egysége numerikus legyen (=a

számolást végző része számjegyes legyen)

elektroncsöves legyen (mechanikus és elektromos kapcsolók helyett)

kettes számrendszert használjon emberi beavatkozás nélkül oldjon meg

feladatot (közbenső logikai döntéseket is végezze el önmaga)

az adatok tárolhatók, olvashatók, törölhetők legyenek

Page 15: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 15. oldal

Alan Turing

angol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép matematikai modelljét („Turing-gép”). A II. világháborús (angol) kódfejtés21 és logisztika számára kifejlesztett gépe, a Colossus I. 1943-ra működött. Ez volt az első elektroncsöves számítógép. Nem gyakorolt további hatást a számítástechnika fejlődésére, mivel a brit kormány (katonai jelentősége miatt) titkosította 30 évre.

John Atanasoff

1939-ben épült fel Atanasoff és Berry elektronikus kompjútere22, az ABC 23, melyet egyenletrendszerek megoldására használtak.

Howard Aiken

(New York) Babbage munkáját megismerve elkészítette a MARK1 nevű gépet eredetileg telefonbeszélgetések számlálására, de aztán lőelem-táblázatok számítására használták (1944).

Az USA-ban 1946-ra Mauchley és Eckert nagyon gyorsan és pontosan számoló gépet készítettek ENIAC néven (lyukkártyán lévő 21 A brit hírszerzés megbízásából fejlesztette ki, hogy a németek „ENIGMA” gépeivel titkosított üzeneteit minél rövidebb idő alatt megfejthessék.22 Atanasoff felajánlotta az IBM-nek gyártásra a találmányt, de ők azt válaszolták, hogy nem érdeklődnek az elektronikus számítógépek iránt. 23 Miért is lett a neve ABC? Különben az első, Magyarországon nagyobb mennyiségben megjelent nyugati kompjúterek az ABC80-ok voltak (tehát 1980-ban megjelent számítógépek, amelyek a COCOM-lista megszűnésekor behozhatókká váltak).

külső programmal, 18000 elektroncsővel). Ezred ill. tízezred másodperc alatt végzett matematikai műveleteket 10 tizedesjegy pontosságú számokkal, ehhez azonban 30 méternél hosszabb teremre volt szükség, és 30 tonnát nyomott.

Neumann János magyar matematikus

(és Herman Goldstine) az USA-ban 1946-ban megfogalmazta az elektronikus digitális számítógépek működésének elveit, amelyeket ma mindenki ismer a következő néven:

Neumann-elvek 24

A számítógép elektronikus és kettes számrendszer t használó részekből épüljön fel.Szekvenciális ( soros ) végrehajtás : A végrehajtási utasítások pontosan határozzák meg, hogy egy lépés után melyik (egy!) lépés következik. A számítógép (logikai) felépítése a következő legyen:Memória (tár) az információ tárolására

(címezhető és felülírható rekeszekkel). Ez tárolja kettes számrendszerbeli formában

a számításhoz szükséges adatokat (kiindulási adatokat és azokból adódó eredményeket), és

a számítás végrehajtási utasításait (=program) is. (Ez a „tárolt program elve”.)

Központi (feldolgozó) egység (=Central Processing Unit, CPU, vagyis processzor!) az információ feldolgozására, benne

aritmetikai-logikai egység, amely a számolást és logikai műveleteket végzi

vezérlő egység, amely a tárból kiolvasott utasítások segítségével, emberi beavatkozás nélkül irányítja a feladat végrehajtását.

Perifériák az információ gépbe juttatására és onnan kivitelére.

A Neumann-elvek elvi útmutatást adtak a számítógépek építéséhez25.

24 Mivel Neumannék ezt egy hosszabb cikkben publikálták, sokan máshogyan csoportosítják (és számozzák) a benne található elveket.25 Tehát nem konkrétan mondják meg, hogyan kell számítógépet építeni, csak hogy ezeket az elveket

Page 16: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 16. oldal

Az első (közismert) tárolt program elvű gépet (az EDSAC-ot) Maurice Wilkes előbb készítette el Cambridge-ben, míg Neumannék csak 1951-re fejezték be az övéket (az EDVAC egy egyéni vátozatát, az IAS-t).

A használatban lévő gépek a mai napig a Neumann-elvek szerint épülnek fel!

Szabadalmaztatta valaki a számítógépet?26

Nem. Az ENIAC és az EDVAC készítői megpróbálták, de az amerikai szabadalmi hivatal és a bíróság úgy döntött, hogy a digitális számítógépet John Atanasoff találta fel a 1942-ben (bár nem szabadalmaztatta).

Atanasoff gépe korához képest elképesztően fejlett volt (kettes számrendszer használt, a memóriákat kondenzátorok működtették a mai RAM-okhoz hasonló módon), de Babbage-hez hasonlóan ő sem tudta megfelelően kivitelezni korának fejletlen hardver-technikája miatt. Atanasoff gépét különben Mauchley és Eckert is ismerték, és sok ötletet merítettek belőle az ENIAC és az EDVAC megépítéséhez.

Számítógép-generációkA mechanikus és relés számoló- és számítógépek után a következőképpen tagoljuk a számítógépek fejlődését:Az első generáció:

1945-55 között elektroncsöves gépek épültek, a számítógép akkoriban csak hardverből állt. (ENIAC,EDVAC,UNIVAC)

Második generáció:1955-65 között megjelentek a tranzisztorok, megkezdődött a miniatürizálás. Szoftver szempontjából a kötegelt rendszerek voltak jellemzőek.

Harmadik generáció:1965-72 között már használták az integrált áramköröket, ez ugrásszerűen csökkentette a méretet, javította a megbízhatóságot, növelte a műveleti sebessséget. Az IC (Integrated Circuit, integrált áramkör) elektronikai alkatrész, amely sok diódát, tranzisztort, ellenállást tartalmaz a közöttük lévő kapcsolásokkal együtt egy lapkán. Ezek sűrűsége egyre nőtt: SSI = Small Scaled Integration (-10 logikai kapu), MSI (10-100), LSI (100-1000). Szoftveroldalon megjelent az operációs rendszer, kialakultak programnyelvek, és a multiprogramozás.

Negyedik generáció:A 70-es évek második felétől már elég nagy sűrűséget (VLSI: 1000 feletti) értek el

követve érdemes számítógépet építeni.26 Ha valaki szabadalma lenne a számítógép… annál több pénz semmi másból nem származhatna ma a Földön!

félvezető lapkán (ezt nevezik chip-nek), így lehetővé vált a központi egység (= processzor, central processing unit, CPU, központi feldolgozó egység) részeinek összeépítése egy lapra: megszületett a mikroprocesszor (az Intel cégtől, 1971).

Ma már persze sokmillió az egy chipen ülő alkatrészek száma, más szempontból is hozott újat a fejlődés (pl. műveleti sebesség növekedése27, hálózatok kialakulása), ezért a mai gépeket már sokan (főleg reklámcélból) ötödik generációsnak mondják, de sokak által elfogadott vélekedés, hogy a maiakat soroljuk továbbra is a negyedik generációba (és majd csak a megváltozott logikai modellű gépeket nevezzük majd ötödik generációsnak28).

E generációkon át a következő tendenciák nyilvánvalóak: a méret csökkenése, a műveleti sebesség növekedése, a szoftver jelentőségének növekedése, a szoftver felhasználóbarátabbá válása, az ár csökkenése – és e két utóbbival szoros

összefüggésben – az elterjedtség növekedése.

Magyarország és a volt szocialista országok ellen a 80-as évekig érvényben volt egy tiltó lista („COCOM-lista”), amelyen szereplő, (csúcstechnikát tartalmazó) gépeket, termékeket nem engedték be ezekbe az országokba. Így egyrészt nálunk rendkívül későn kezdtek megjelenni a számítógépek, másrészt saját számítógép-fejlesztésünk más utakon járt, mint a nyugati.29

27 A műveleti sebesség mértékegysége: MIPS (Million Instruction /sec); azt fejezi ki, hány millió utasítást képes végrehajtani másodpercenként).28 Az ötödik generációs gépek várhatóan már nem követik a „soros működés” (Neumann-) elvét, hanem az emberi agyhoz hasonlóbban – neurális hálókként – működnek majd, a mesterséges intelligencia kutatások eredményeit felhasználva. A japánok már próbálkoztak ilyennel CNN néven.29 Kettős viszonyunk volt a számítástechnikához (is): egyrészt ideológiai alapon elutasítóan viszonyultunk hozzá (egy lexikonban például a kibernetika fogalmát így magyarázták: „imperialista áltudomány”), másrészt jelentős és jó eredményeket hozó kutatások is folytak a KFKI-ban és Szegeden. Eközben a néhány évig nyugaton dolgozó tudományos kutatóktól az MTA szívesen megvette jó pénzért az ott vásárolt COCOM-listás gépeiket. Ez utóbbi persze már a nemzetközi ipari (és haditechnikai) kémkedésnek is része volt.

Page 17: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 17. oldal

S z á m í t ó g é p –a r c h i t e k t ú r a

Arra, hogy a számítógép — mint rendszer — hogyan épül fel, a „számítógép-architektúra” fogalmat szokás használni.

A számítógép logikai (elvi, funkcionális) felépítése (a Neumann-elvek alapján!):

Hardver – architektúraEz alatt a számítógép konkrét, technikai megvalósítását, vagyis azt értjük, hogy milyen hardver-elemekből, hogyan épül fel a számítógép. A számítógép központi része, ami az előző ábrán szerepel, technikailag is ennek megfelelően néz ki, úgy, hogy a vezérlő egységet, az ALU-t és a memóriát egy sínrendszer (buszrendszer) köti össze.A „nyitott architektúrájú számítógép” elnevezést használjuk akkor, ha az tovább bővíthető (a kereskedelemben kapható) hardver elemekkel.Azt, hogy egy számítógép milyen elemekből épül fel, konfigurációnak is nevezzük.

Szoftver – architektúraEz alatt azt értjük, hogy a számítógépet mint rendszert milyen szoftverek teszik képessé a feladatai megoldására, és ezek milyen kapcsolatban állnak egymással. A számítógép-architektúrát (és benne a szoftverek „rétegzettségét”) szemlélteti a következő ábra:

A számítógép hardverével a kapcsolatot az operációs rendszer teremti meg; sem a felhasználónak, sem a speciális feladatokat (szövegszerkesztés, táblázatkezelés, Internet-böngészés, stb.) végző alkalmazásoknak nem kell közvetlenül kezelniük a hardvert. Az operációs rendszer kezeli tehát helyettük, „megbízásukból” a hardver-elemeket, például utasítja írásra a floppy meghajtót.Az operációs rendszer utasítást kaphat valamilyen feladat elvégzésére a következő módokon:Közvetlenül a felhasználó utasítja a felhasználói felületen (User Interface) keresztül: billentyűzetről begépelt parancsokkal vagy grafikus felhasználói felület (GUI) esetén egérrel, menüvel, eszköztárral.Például ha a Windows Intézőben egy fájlt „átvonszolunk” egy másik mappába, akkor az operációs rendszer végrehajtja a megfelelő műveletet.Az alkalmazásokon keresztül: Az alkalmazások „automatikusan dolgoztatják” az operációs rendszert,Például ha a Painttel való rajzolás közben a Mentést használjuk, akkor a Paint alkalmazás fogja az operációs rendszert megbízni a fájl lemezre íratásával.

A k o m p a t i b i l i t á s f o g a l m a Mind hardver, mind szoftver elemekre használjuk ezt a fogalmat, lényegében együttműködő-képességet jelent. Két elemet akkor nevezünk kompatibilisnek, ha azokat a számítógép rendszerén belül, a számítógép képes mindkettőt működtetni. Például „az alaplapunk kompatibilis a processzorral”. Szoftver esetén két alkalmazásra mondják, hogy kompatibilisek, ha az egyikkel készített adatokat (fájlokat) a másikkal fel lehet dolgozni. Felülről kompatibilisnek neveznek két szoftvert (egy szoftver régebbi és újabb verzióját), ha a régebbivel készített minden adatot (állományt) lehet kezelni az újabb verzióval. Fordítva ez nem lehetséges, hiszen a régebbi nem lehet úgy megírva, hogy benne legyen az, amit csak a jövőben fognak kitalálni.

Szokták még számítógépekre mondani, hogy például „IBM PC kompatibilis”: ez azt jelenti, hogy nem feltétlenül az IBM cég gyártotta, de azonos feltételek esetén a programok ugyanúgy működnek rajta, mint az eredeti IBM PC-n.

Fel-haszná-lóifelület

alkalmazások

operációs rendszer HW

Page 18: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 18. oldal

A programokProgram: A számítógép számára érthető kódolt formában tartalmazza azokat a lépéseket, amit a számítógépnek végre kell hajtania, hogy az általunk kívánt feladatot megoldja.A programokat programozó matematikusok tervezik, programozók készítik el valamilyen programozási nyelven, melyet a számítógép számára érthető formára (bináris jelsorozatokká) lefordítanak, hogy a számítógép működtetni tudja azokat.Programverziók (programváltozatok): a különböző programokat később továbbfejlesztik, készítenek fejlettebb változatot, amely jobb, kényelmesebben használható, szebb megjelenésű, többet tud vagy az azóta megjelent technikai újításokat jobban kihasználja, mint az előző. Ezeket általában ugyanazzal az elnevezéssel de más verziószámmal jelölik (pl. DOS1.0, DOS 2.0, DOS 3.0, DOS 3.3,…, DOS 6.2, DOS 6.22), esetleg az évszámot használják (pl. Windows 95, Windows 98, Windows 2000). A változatokra rendszerint a „felülről való kompatibilitás” jellemző.

Programok csoportosításaA programok lehetnek rendszerprogramok (a számítógép működéséhez szükséges programok) illetve alkalmazói programok (alkalmazások, felhasználói programok, applications) (amelyek egy-egy konkrét feladatot oldanak meg a felhasználó számára).

I . R e n d s z e r p r o g r a m o k I./1. BIOS:(Basic Input Output System, ROM BIOS) Ez egy speciális program, ami a számítógép „csak olvasható memóriájában” található, gyárilag beépített (beégetett) program. Tulajdonképpen hardvernek is, szoftvernek is tekinthető! A számítógép bekapcsolásakor ez végzi a hardver elemek ellenőrzését („csekkelését”), majd az operációs rendszer betöltését. Egyébként is ez valósítja meg az alapvető I/O feladatokat.

I . / 2 . O p e r á c i ó s r e n d s z e r Olyan programrendszer, amely a legalapvetőbb feladatokat végzi; megteremti a kapcsolatot a felhasználó illetve a felhasználói programok és a hardver között; vezérli a gépen futó folyamatokat, kezeli az erőforrásokat (hardver és szoftver erőforrásokat).Az operációs rendszer feladatai kissé részletesebben:

Vezérlő egység kezelése; memóriatartalom nyilvántartása, processzorhoz való hozzájutás elosztása.

Perifériák kezelése, adatcsatornák állandó figyelésével a jó kihasználtság szervezése.

Memóriakezelés, kiosztás és felszabadítása, védelem.

Állomány- (fájl-) műveletek. Párbeszédes kapcsolattartás a

felhasználóval. Programok működtetése. Hibakezelés.

Operációs rendszer nélkül tehát a számítógép működésképtelen. Többféle operációs rendszer létezik akár ugyanolyan számítógépekre is, pl. DOS30, UNIX31,Linux32, OS/233, Windows NT34, Windows XP35.

Az operációs rendszer két részből áll:Kernel („mag”): gépközeli, végrehajtó részFelhasználói felület: a felhasználóval való kommunikációt teszi lehetővé parancsnyelv segítségével vagy grafikus felhasználói felületen (GUI) keresztül utasíthatjuk bizonyos alapvető feladatok elvégzésére, ugyanakkor az operációs rendszer is küld üzeneteket a felhasználónak.

A z o p e r á c i ó s r e n d s z e r e k c s o p o r t o s í t á s aFelhasználók száma szerint: egyfelhasználós (pl. MS DOS) vagy többfelhasználós /multiuser (pl. Windows XP).

Processznek nevezik az éppen futó (párhuzamos programszerkezeteket nem tartalmazó) folyamatot (amely programot a processzor a jelenleg végzett műveleteivel elősegít, valahol tart a végrehajtásában). Az operációs rendszereket csoportosítják az egyidőben aktív (egyszerre végezhető) processzek száma szerint is:Egyfeladatos /single tasking operációs rendszer az, aminél egy időben csak egy processz aktív, bár több is lehet a memóriában, például MS DOS. Többfeladatos /multi tasking /multitask operációs rendszernél több processz valamilyen módon (pl. valamilyen időosztás alapján) megosztozva a processzor működésén látszólag párhuzamosan fut36. Pl.

30 A Microsoft cég terméke.31 A Bell Labs terméke.32 A UNIX egy nyílt fejlesztésű változata Linus Thorwaldstól.33 Az IBM terméke.34 A Microsoft cég terméke.35 A Microsoft cég terméke.36 „virtuális párhuzamosság”

Page 19: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 19. oldal

Windows XP. Valóban párhuzamosan37 akkor futhatnak processzek38, ha több processzor van: „multi processing”.A felhasználói felület (User Interface) szerint: karakteres /parancsnyelves /parancsorientált (pl. DOS, UNIX) – szigorú szintaktika!) Vagy grafikus felhasználói felületű (GUI = Graphical User Interface) (pl. Windows 95). Amelyik operációs rendszer nem (volt) grafikus felületű, ahhoz később írtak segédprogramokat vagy grafikus felületet, mert így szívesebben használják az emberek (pl. Norton39

Commander, DosShell, Windows 3.1).

Az op. rendszer egyik legfontosabb feladata a:

f á j l k e z e l é s Fájl40-nak (állománynak nevezzük a logikailag összetartozó adatokat, amire egy (fájl)névvel hivatkozhatunk. A különböző operációs rendszerek más és más rendszert („fájlrendszer”, „file system”) használhatnak a fájlok kezelésére, de mindegyikben meg kell oldani a következőket:Fájl elhelyezése (írása, rögzítése, file allocation) háttértárolókon (floppyn, winchesteren, CD-n,…), és annak nyilvántartása, hogy milyen nevű fájlok hol lettek elhelyezve.Fájl tulajdonságainak nyilvántartása (fájlleírás, file description). Részletes információt őriz a fájl nevéről, létrehozásának és utolsó használatának idejéről, stb.Fájlszervezés (file organization): Rengeteg fájl könnyebben kezelhető a felhasználó számára, ha csoportosíthatók. Ennek érdekében az operációs rendszerek „könyvtárszerkezetet” (= könyvtárstruktú-rát, mapparendszert) hoznak létre, ami logikailag létezik (fizikailag – a lemezen például – a fájlok nem a könyvtárrendszer szerinti csoportosításban foglalnak helyet). Számontartja viszont egy tartalomjegyzék-rendszerben (=directory-ban, katalógusrendszerben), hogy a felhasználó számára milyen alkönyvtárakban mutassa a fájlokat. Ehhez persze minden könyvtár- (=alkönyvtár, mappa) névhez meg kell jegyeznie, hogy melyik könyvtár honnan nyílik, benne milyen fájlok vannak és belőle milyen könyvtárak nyílnak.41

37 „valós párhuzamosság”38 Neumann-elvű számítógép esetén39 A Peter Norton által alapított cég terméke. Szintén az ő termékük a Norton Antivirus.40 A file eredetileg iratköteget, iratcsomót jelent, ezt a szót használták az irodában használt, kemény lapok közé helyezett, szalaggal átkötött iratcsomagokra.41 Az alkönyvtár tulajdonképpen egy fájl, ami bejegyzéseket tartalmaz más fájlokról.

Fájlműveletek: A felhasználó számára lehetővé kell, tennie, hogy az állományait törölhesse, másolhassa, átnevezhesse, stb.Fájlvédelem: Az operációs rendszer a fájlokkal történő véletlen vagy illetéktelen műveletek ellen védi azokat.

I . / 3 . S e g é d p r o g r a m o k (= utilities, utility-k):(Kis túlzással szokás a rendszerprogramok, illetve korrektebben inkább a „rendszerközeli programok” közé sorolni a segédprogramokat is, mert:)Ezek hasznos apróbb programok, amelyek a felhasználó általános, nem konkrét szoftverekhez kapcsolódó igényeit elégítik ki, hanem az üzemeltetést segítik, tehát tulajdonképpen az operációs rendszer szolgáltatásait teszik kényelmesebbé vagy bővítik:Fájlkezelők (pl. Norton Commander, Windows Commander), lemezkezelők (pl. Partition Magic), a hardver lehetőségeit bővítő programok (pl. „winchesterbővítők”), diagnosztikai programok (vagy „tesztprogramok” pl. hardverdetektáló program), biztonsági programok, stb. Sokan ide sorolják a kevésbé rendszerközeli segédprogramokat; például a (személyes) tűzfalakat, vírusirtókat, tömörítőket is.A tendencia az, hogy e segédprogramok által megvalósított funkciókat az operációs rendszerek újabb változataiba igyekeznek beépíteni.

I I . F e l h a s z n á l ó i s z o f t v e r e k (= alkalmazói programok, alkalmazások, applications): A szoftverpiac legnagyobb szeletét éppen ezek a programok jelentik.

II./1. Vannak köztük általánosabb célú szoftverek, amelyek bárki számára hasznosíthatóak (szövegszerkesztők, táblázatkezelők, adatbázis-kezelők, levelezőprogramok, grafikai programok, multimédiás programok, internethasználatot elősegítő programok, jogi és egyéb adattárak, játékprogramok,…és vannak, akik ide sorolják a kevésbé rendszerközeli segédprogramokat; például a (személyes) tűzfalakat, vírusirtókat, tömörítőket is.

II./2. speciális célú szoftverek, amelyek kifejezetten egy-egy szakma vagy tevékenység igényei szerint készültek (pl. könyvelő-, mérnöki tervezőprogramok, kiadványszer-kesztők, integrált vállalatirányítási programok, oktatóprogramok, adóbevallási program, programnyelvek)

Page 20: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 20. oldal

Néhány felhasználói program ismertetése:

A g r a f i k a i p r o g r a m o k a digitális képek különböző fajtáit tudják kezelni; két alapvető fajtája a pixelgrafika (=raszter- bittérképes- vagy bitmap grafika) és a vektorgrafika.A pixelgrafika azon alapul, hogy a képek pontokból (pixelekből) épülnek fel, és a tárolásukkor pontonként elmentődnek az ott szereplő színek kódjai. Emiatt ezek a képek nagy helyet foglalnak. A pixelgrafikát nem lehet nagyítani vagy kicsinyíteni az eredeti kép valamilyen fokú torzulása nélkül.A vektorgrafikák az ábrák összetevőit (objektumait) és a köztük lévő (logikai) kapcsolatot tárolják, így elmentve kevesebb helyet foglalnak. A vektorgrafikák nagyításakor és kicsinyítésekor nem lép fel torzulás. A tervezőrendszerek ezt a módszert használják.

A grafikus programok néhány fajtája: rajzoló-, képfeldolgozó-, animációs programok. Vannak két- illetve három dimenziós (3D) grafikai programok.

Grafikai programok például: Paint, Paintbrush, Adobe Photoshop, Coreldraw, Adobe Illustrator, Paint Shop Pro.

A s z ö v e g s z e r k e s z t é s r e használható programok elnevezése a képességeik alapján általában: editorok (pl. Jegyzettömb, Write, Wordpad), szövegszerkesztők (pl. Word, WordPerfect), kiadványszerkesztők (DTP, Desktop Publisher, pl. Panda, QuarkXPress, Corel Ventura, Microsoft Publisher).

A t á b l á z a t k e z e l ő k alkalmasak táblázatokkal való (statisztikai, matematikai, pénzügyi, gazdasági, stb.) számításokra, diagramok alkotására, az adataik más alkalmazások rendelkezésére bocsátására. Például: Microsoft Excel, Lotus 1-2-3, Quattro Pro.

A d a t b á z i s - k e z e l ő p r o g r a m o k Adatbázis több, egymással kapcsolatban lévő adattáblázatot jelent, amelyeket egymással összefüggésben lehet tárolni, módosítani, lekérdezni, stb. (Ilyen lehet például egy gépkocsi kölcsönző adatbázisa. Ott a kocsikról is van egy csomó adat, és a kölcsönző személyekről is, ezeket pedig együtt is kell kezelni, például amikor egy személy visszahozza a kikölcsönzött kocsit: Akkor az ő adataira szükség van a számla elkészítéséhez, ugyanakkor a kocsi adatai közé is be kell írni, hogy visszahozták, tehát újból kölcsönadható.)Például: Microsoft Access, Oracle, dBase, Clipper, Microsoft Visual FoxPro, Magic.

A p r e z e n t á c i ó ( b e m u t a t ó ) k é s z í t ő p r o g r a m o k előadások során

használható multimédiás anyagok készítésére alkalmasak, (az előadást segítő vagy helyettesítő) bemutató „diasorozatként” épül fel.Például: Microsoft PowerPoint, Lotus Freelance Graphics, Harward Graphics, Star Impress.

M u l t i m é d i a f e j l e s z t ő p r o g r a m o k alkalmasak arra, hogy létrehozzunk multimédiás elemeket, sőt alkalmazásokat (akár a második világháború történetét CD-n kép- film- és hangdokumentumokkal, szöveggel). Például Macromedia Flash, Macromedia Director, Corel Move, Adobe Premiere, Sonic Foundry, Sound Forge.

K a r a k t e r f e l i s m e r ő p r o g r a m o k között egyeduralkodó az egész világon a magyar Recognita42 szoftver. Segítségével például szövegszerkesztővel használhatóvá alakíthatod a beszkennelt szöveget, akár kézírást is. Abban, hogy a szoftver minél jobban felismerje a betűket, már a mesterséges intelligenciának43 is szerepe van.

T e r v e z ő p r o g r a m o k (CAD, Computer Aided Design, számítógéppel segített tervezés)Ezek a digitális képkezelési módokat felhasználva és a tervezői matematikai – fizikai számításokat elvégezve könnyítik meg a tervezők munkáját. Használatukkal minden előállítható, amelyre egy tervezőnek szüksége lehet illetve amit elvárnak tőle (terv, 3 dimenziós megjelenítés, dokumentáció és adattár készítése, csoportmunkához adatok szolgáltatása, stb). Ilyen programok készültek földmérőknek, településtervezőknek, formatervezőknek, textiltervezőknek, közműtervezőknek, környezetvédelmi mérnököknek, stb. Az építészek számára írt legjelentősebb, világhírű program a Graphisoft magyar cég terméke (Archicad). Továbbá: AutoCad, MicroStation,…

42 Recognition = felismerés43 AI = Artificial Intelligence, mesterséges intelligencia. A mesterséges intelligencia egy kutatási terület (tudományterület), nem pedig egy lény, mint a filmekben. Minden olyan téma a mesterséges intelligenciához tartozik, amit ma (még) az ember jobban tud, mint a gép. Például egy emberi arcról felismerni, hogy az nőé vagy férfié. Az AI kutatások célja, hogy létrehozzunk olyan számítógépet illetve programot, amely ilyen (öntanulást is igénylő) tevékenységet tud végezni. Ma sikeres kutatások folynak a beszédfelismerés, nyelvmegértés területén.

Page 21: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 21. oldal

A t é r i n f o r m a t i k a i r e n d s z e r e k olyan adatokat kezelnek, amelyek nemcsak logikai, hanem térbeli kapcsolatban is vannak egymással (például egy város villamos áram-, csatorna- és ívóvíz-hálózatának adatainak tárolásához, elemzéséhez, megjelenítéséhez szükségesek térképek, szöveges- és számadatok). Ma gyakran használt fajtái:GIS (Földrajzi Információs Rendszer), földhivatali rendszerek, közműnyilvántartó rendszerek, GPS (Globális Helymeghatározó Rendszer, ez a műholdak és egy műszer segítségével lehetővé teszi, hogy egy dolog földrajzi koordinátáit meghatározhasd, illetve, hogy egy adott földrajzi koordinátához odatalálj. Lásd egy játékos felhasználását a www.geocaching.hu-n.)

Az o k t a t ó p r o g r a m o k tananyagok bemutatására, feladatok gyakoroltatására, ellenőrzésre és értékelésre használhatóak. Nagyon elterjedtek például a multimédiás nyelvoktató programok, de ide tartoznak a katonai pilótákat kiképző szimulátorprogramok is.

I r o d a i p r o g r a m c s o m a g o k (irodai programok, office applications) néven szokás együttesen megnevezni azokat a programokat, amelyek egy irodában használatosak; ezeket a fejlesztők így is fejlesztik és forgalmazzák („csomagban”, pl. a Microsoft Office programcsomag). Ezek képesek megoldani egy szervezetben zajló folyamatok dokumentálását, adatainak feldolgozását, az iroda tagjainak közös munkában való részvételét és kommunikációját. Általában tartalmaznak szövegszerkesztőt, táblázat-kezelőt, adatbázis-kezelőt, levelezőprogramot, stb. Integrált rendszereknek is nevezik ezeket a programcsomagokat, mert a különböző alkalmazások együttműködnek egymással (pl. a táblázatkezelővel létrehozott táblázatot beillesztheted a szövegszerkesztővel írt szövegbe, és ezt elküldheted rögtön a levelezőprogrammal).

A z I n t e r n e t e t h a s z n á l ó p r o g r a m o k : B ö n g é s z ő p r o g r a m o k (Internet Explorer, Netscape Navigator, Opera, Mozilla) l e v e l e z ő p r o g r a m o k (Microsoft Outlook Express, Horde), stb44.

P r o g r a m n y e l v e k (Programozási nyelvek.) A számítógép processzora számára érthető, azaz számjegyekkel megjelenített programokat gépi kódú programoknak nevezik. Gépi kódban

44 Bővebben ld. a „Hálózatok” jegyzetben.

azonban túlzottan időigényes és nehézkes programot írni, mert például a műveleti kódokat numerikus (általában

hexadecimális) formában kell megadni, abszolut tárcímeket kell megadni, vagyis

ismerni kell a memória pontos felosztását, a program csak akkor hajtható végre, ha a

programban megadott tárterületre történik a betöltés,

minden műveletet elemi szinten kell megadni, vagyis egy művelet csak egy utasításból vagy hardver műveletből állhat,

ha a program nem fut le, nem kapunk információt a hiba jellegéről,

egyik processzorra megírt program nem használható másik processzorcsaládnál, mivel annak utasításkészlete és egyéb jellemzői eltérőek lehetnek, stb.

A gépi kód helyett egy más kódot (nyelvet, programnyelvet) kellett kitalálni , amivel kiküszöbölhetők ezek a problémák. Az ezeken írt programokat viszont a számítógép számára „le kell fordítani” ahhoz, hogy végre tudja azt hajtani. A kérdés az, hogy ez a programozási nyelv hol helyezkedjen el azon a skálán, ami a gépi kód és a beszélt emberi nyelv között van:

1. Gépközeli nyelveknek, géporientált nyelveknek, assembly szintű nyelveknek vagy assembly nyelveknek nevezzük azokat a programozási nyelveket, amelyek közelebb vannak a gépi kódhoz. Az assembly nyelveken írt programokat le kell fordítani gépi kódra; az ilyen fordítóprogramot nevezzük assemblernek.A gépközeli nyelvek használatához pontosabb hardverismeretre van szükség, nehézkesebb a használatuk, a velük írt programok hardverfüggőek, de jobban kihasználják a processzor sajátosságait, rövidebbek és gyorsabbak. Akkor érdemes ezzel dolgozni, ha a gép sebességét, memóriáját minél jobban ki kell használni – erre ma már egyre kevésbé van szükség45.Az assembly nyelvek sajátosságai:Utasításait egyenként gépi utasításokká lehet alakítani (bár léteznek makroutasítások is, amelyekkel a sokszor előforduló utasításcsoportokra lehet hivatkozni, például a regiszterek tartalmának kimentésére).Az utasításokat nem számokkal, hanem megjegyezhető (mnemonikus) kódokkal jelölik – ezeket mnemonikoknak nevezik – amelyek angol rövidítések. Például JMP az ugróutasítás.

45 Régebben így írták a rendszerprogramokat, fordító- és értelmezőprogramokat, ma esetleg a grafikai részletek megoldására használják.

Page 22: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 22. oldal

Abszolút tárcímek helyett használhatóak szimbolikus adathivatkozások.Egyes utasításokra a tárbeli címük helyett hivatkozhatunk címkével.

2. Magas szintű programozási nyelveknek46, vagy problémaorientált programozási nyelveknek nevezzük azokat a programozási nyelveket, amelyek közelebb vannak az emberi (angol) nyelvhez. Az ezekkel írt programok „hordozhatóak” (különböző típusú számítógépeken is futtathatóak, feltéve, hogy létezik hozzájuk a megfelelő fordítóprogram), utasításkészletük kényelmesebb (például a számtani műveletek jelölése a matematikában megszokott műveleti jelekkel történik), így a programok írása gyorsabb, könnyebb az utólagos javítás vagy bővítés is. A magas szintű programozási nyelvek utasításai több gépi utasítást tartalmaznak, ennek megfelelően a magas szintű fordítóprogramok is bonyolultabbak.

A programozó tehát valamilyen programozási nyelven (egy editorral) megírja a programszöveget (forrásprogramot), azt pedig egy fordítóprogram (compiler) lefordítja a processzor számára érthető, végrehajtható gépi kódba (tárgyprogram). Ezt a tárgyprogramot futtatjuk, amikor a programot használni akarjuk.

Ma már nagyon sok (száznál több) különböző nyelv létezik. Ezek kifejlesztése általában valamilyen típusú problémák, feladatok megoldására irányul. Az egyes programozási nyelvek különböző utasításkészlettel, szabályrendszerekkel rendelkeznek. Ezeket a szerkezeti, formai követelményeket szintaktikai követelményeknek nevezzük. A programozási nyelveket (pl Pascal) fejlesztői környezettel együtt használják, amelyben a nyelven kívül a programszöveg szerkesztését (editor), a fájlkezelést, a fordítást, megkönnyítő lehetőségek is be vannak építve menürendszer formájában (pl. Turbo Pascal). Egy szabványos nyelv kiegészítését többletfunkciókkal (illetve a használatához kialakított fejlesztési környezetét) gyakran „implementációnak” nevezik.

46 HLL: high level language = magas szintű nyelv

Néhány programnyelv:

BASIC (Beginners ALL-purpose Symbolic Instruction Code) Ez a programozási nyelv a magas szintűek közül az egyik legegyszerűbb, komolyabb feladatok megoldására ritkán használják. A BASIC nyelvet a magyar Kemény János47

alakította ki! A BASIC implementációi például: GW BASIC, TURBO BASIC, QUICK BASIC, VISUAL BASIC.

COBOL (COmmon Bussines Oriental Language: közös üzletorientált nyelv)Elsősorban adatfeldolgozásra készült, ezen a területen még ma is használják. Hasonlít a normál beszédhez, utasításai állítások.

FORTRAN: (FORmula TRANslation, azaz képletek, algebrai kifejezések használatára alkalmas nyelvnek készült, 1954, John Backus vezetésével). Ez az egyik legrégebben használatos magas szintű programozási nyelv, sok korszerűsített implementációja létezik, matematikai, fizikai kutatásoknál szükséges számítások elvégzésére a legalkalmasabb.

Pascal: Kifejezetten oktatási célra kifejlesztett, általános célú programnyelv.

C 48(Ken Thompson „B” nyelvének tökéletesítéséből, 1971-ben dolgozta ki Dennis Ritchie). 1983-tól van szabványos C nyelv, a legnagyobb jelentősége, hogy operációs rendszereket is írnak ezen a nyelven (UNIX, 1970). Elterjedését segíti, hogy nagyon hatékony programozási nyelv és a C forrásprogramok elég jól hordozhatóak különböző platformok között. Manapság a C nyelvet a C++ implementációval használják.

47 Kemény János (Budapest, 1926 – New Hampshire, 1992) Einstein és Neumann tanítványa és munkatársa, a BASIC nyelv megalkotója. Az időosztásos számítógép-hálózatért az IBM első Robinson-díját kapta.48 Szokás a C nyelvet alacsony szintű programozási nyelvként is említeni. Ez azonban nem jogos, csak azt jelenti, hogy általában „gépközeli” adattípusokkal dolgozik, tartalmaz olyan gépközeli műveleteket is (például bitstruktúrák kezelését), amelyet más magas szintű programozási nyelvek nem támogatnak. A C nyelvben az I/O utasítások és egyéb műveletek elvégzésére függvényeket kell használni. A függvénykönyvtáraiban több hasznos eszköz található, mint más programozási nyelvekben.

1. ábra: Kemény János

Page 23: Rendszerelméletusers.atw.hu/szamtek12e/jegyzet.doc  · Web viewangol matematikus 1936-ban leírta a tetszőleges matematikai problémák megoldására szolgáló számítógép

Informatika jegyzetek D VPE 23. oldal

JAVA: A Java a Sun által kifejlesztett programozási nyelv, amelyet a web számára terveztek. A Java lényege az, hogy HTML dokumentumban hivatkozhatunk Java programokra49, amelyek platform függetlenek, tehát bárhol futtathatóak.

P r o g r a m t e l e p í t é s A számítógépeket általában már eleve operációs rendszerrel ellátva adják el. Ha nem így van, akkor természetesen először az operációs rendszert kell telepítenünk.A „dobozban” megvásárolt szoftverek magukban foglalják a felhasználói kézikönyvet (user guide), esetleg regisztrációs kártyát, és a programot tartalmazó adathordozó(ka)t. Első tennivaló a program telepítése: A kézikönyvben szerepel, hogyan kell elindítanunk a telepítőprogramot, ezután az a monitoron tájékoztat minket a továbbiakról. A telepítés 5-60 percig is tarthat, végeredményeképpen a program felkerül a számítógép winchesterére, és onnan használható lesz. Vannak azonban olyan programok is, amelyeknek a használatához is szükség lesz mindig a lemezre. (Ez vagy az illegális terjesztés megakadályozása céljából van így50, vagy azért, hogy a program által ritkábban használt nagy tömegű adat ne foglalja el a winchestert.) A telepítés végeztével a telepítőlemezeket őrizzük meg.

S z o f t v e r p i a cMindezeket a programokat meg lehet vásárolni, és mint áruk, általában védett márkanévvel, a gyártó céggel kötött szerződések szerint forgalmazhatók. Az így vásárolt programot nevezzük jogtiszta

49 A Java programot a fordító egy köztes gépi kódra, úgynevezett virtuális gépi kódra fordítja le, amelyet végül is majd a Web-böngésző fordít le futtatható formátumra. A legújabb böngészőkbe sőt néhány operációs rendszerbe már be van építve a Java támogatás. Ha nem akarsz Java-ban programozni, akkor is elhelyezhetsz HTML dokumentumban Java scriptet, ami egyszerűbb. Míg a Java program egy önálló, lefordított file és a HTML dokumentumban csak hivatkozás van rá, addig a Java script magában a HTML oldalban van forrásszöveg formájában. Mindkettő nagyon hasonlít a C++ nyelvhez. Ahhoz, hogy egy Java program futtatható legyen, példányosítani kell. Ez azt jelenti, hogy a forráskódban kell lennie egy olyan metódusnak, amelynek neve megegyezik a program nevével.50 A legszigorúbb megoldást a „kulcslemezes programok” alkalmazzák, ezeknél a program kizárólag az eredeti kulcslemezzel futtatható.

szoftvernek. Az illegálisan megszerzett, másolt programok birtoklása azon kívül, hogy törvénybe ütközik és büntethető, egyéb hátrányokkal is járhat: Hiányzik hozzá a dokumentáció, nem telepíthető újra (esetleg több alkalommal), lehet vírusfertőzött, korlátozottan használható, stb. A jogtiszta szoftverhez egyéb előnyöket is biztosíthatnak a gyártók és forgalmazók: Továbbfejlesztett (update, upgrade) változat kedvezményét, karbantartási szolgáltatást, ügyfélszolgálatot, csereakciókat, stb.Vannak olyan szoftverek is, amelyek szabadon (ingyen) terjeszthetők (másolhatók, internetről letölthetők) és korlátlanul használhatók, ezeket freeware szoftvereknek nevezik.A shareware szoftverek szintén szabadon megszerezhetőek, de a használatukban valamilyen korlátozás érvényesül: általában csak egy ideig (pl. 30 napig) használhatóak szabadon, utána meg kell vásárolni vagy le kell törölni.