Programming | Programming theory » Zalán Eszter - Programozási nyelvek

Please log in to read this in our online viewer!

Zalán Eszter - Programozási nyelvek

Please log in to read this in our online viewer!


 2010 · 17 page(s)  (662 KB)    Hungarian    223    October 15 2010  
    
Comments

No comments yet. You can be the first!

Content extract

http://www.doksihu Programozási nyelvek http://www.doksihu Programozási nyelvek fejlődése Programozási nyelvek első generációja: gépi (bináris) kód  A számítógép processzora közvetlenül megérti  Nincsenek a klasszikus értelemben vett programnyelvi elemek http://www.doksihu Programozási nyelvek fejlődése Programnyelvek második generációja: alacsony szintű (gép közeli) nyelvek  Megmarad a számítógép erőforrásainak maradéktalan kihasználhatósága  Memóriacímek, regiszterek, megszakítások közvetlenül elérhetők, programozhatók  Gépi utasítás  nyelvi utasítás  Adatokat, adatok helyfoglalását definiáló utasítások  Azonosító rendelhető a memóriacímekhez, adatok kezdőcíme elnevezhető http://www.doksihu Programozási nyelvek fejlődése 3. Programnyelvek harmadik generációja: magas szintű nyelvek  3GL: 3rd Generation Language  Változó fogalma; változó azonosítója nem egy

kezdőcímet, hanem egy tartományt jelöl a memóriában  Típus fogalma, új típusok létrehozásának lehetősége  Vezérlőszerkezetek http://www.doksihu Programozási nyelvek fejlődése 4. 4GL eszközök: magas szintű programozási nyelvre épülő komplex, objektumorientált programfejlesztői rendszerek  Futtatható állomány generálása  Gyors fejlesztési lehetőség  Objektumorientáltság  Grafikus felhasználói felület  Teljesség  Moduláris programfelépítés  Csoportmunka támogatása  Segédprogramok http://www.doksihu Szintaxis és szemantika  Szintaxis: egy programozási nyelven írt program formai helyességére vonatkozó szabályok gyűjteménye. „nyelvtani szabályok”  Szemantika: hogyan kell éretlmezni az utasításokat, a programozási nyelven írt program jelentését, tartalmi helyességét leíró szabályok.  Szintaktikai, illetve szemantikai hiba http://www.doksihu Fordítás és értelmezés

 Fordítás  fordítóprogram – compiler  forrásnyelvű program  célnyelvi program  célnyelv általában a gépi kód vagy gépi kódszerű forma  Előny:  Futtatáshoz nem szükséges a fejlesztői környezet  Szintaktikai hibák gyors jelzése  Hátrány:  Nehézkes a hibajavítás http://www.doksihu Fordítás és értelmezés  Éretlmezés  értelmező – interpreter  Utasításonként értelmezi és végrehajtja a forrásnyelvű programot  Előny:  Gyors hibajavítás, nem kell újra fordítani  Hátrány:  Lassabb a végrehajtás  Futtatáshoz szükséges a fejlesztői környezet http://www.doksihu Programstruktúrák  Program - önállóan futó, önálló feladatot ellátó program-struktúra - a külvilággal a be- és kimeneten keresztül tart kapcsolatot  Programcsomag - hasonló feladatokat ellátó programok összessége  Fordítási egység (modul) - önállóan lefordítható

programstruktúra - kapcsolat export és import modulokon keresztül http://www.doksihu Programstruktúrák  Programegység - a program egy önálló feladatot ellátó része - paramétereken keresztül tartja a kapcsolatot a programmal - eljárás, függvény, operátor  Folyamat - párhuzamosan futó programok vagy programegységek (kommunikálnak, közös erőforrások)  Blokkstruktúra - a programegységek egymásbaágyazása http://www.doksihu Számítási modellek  Neumann-elvű nyelvek  Automataelvű nyelvek  Funkcionális nyelvek  Logikai nyelvek http://www.doksihu Neumann-elvű nyelvek  A végrehajtó egy Neumann-elvű számítógép  Címezhető, írható-olvasható memória, melyben az adatok és utasítások ugyanolyan módon vannak eltárolva  Utasítások szekvenciális (egymás utáni) végrehajtása  Kettes számrendszer  címezhető memóriában tárolt adat  változó  értékadás  adatok beolvasása,

kiírása: memóriamásolás  adott memóriacímtől való végrehajtás  ugró utasítás, ismételt végrehajtás lehetősége http://www.doksihu Automataelvű nyelvek  A program végrehajtója egy automata, pl. robot  LOGO: teknőc – rajzolóautomata  Az automata rendelkezik állapotokkal, az állapotok közötti átmeneteket leíró függvényekkel (műveletek)  Állapotmódosító, állapotlekérdező utasítások  Nincs memória, nincs változó, nincs értékadás  Beolvasás helyett kezdőállapot  Kiírás helyett az állapotátmenetek „nyoma” http://www.doksihu Funkcionális nyelvek  A program egy függvény, a program végrehajtása a függvény kiértékelése.  Programstruktúrák helyett:  Függvénykompozíció  Alternatív függvény  Rekurzív függvény  Beolvasás helyett függvényparaméterezés  Kiírás helyett a függvényérték kijelzése http://www.doksihu Logikai nyelvek  A program egy

logikai formula, a program végrehajtása a logikai formula kiértékelése.  Logikai formula paraméterei kezdetben: kitöltött vagy kitöltetlen  Kiértékelés eredménye: a kitöltetlen paraméterek mely értékeire lesz a formula igaz értékű.  „mintaillesztés” http://www.doksihu Egyéb osztályozások  Procedurális nyelv: a programírás a megoldó algoritmus leírására törekszik  Nemprocedurális nyelv: a program leírása nem a megoldó algoritmus leírására törekszik, a megoldó algoritmust a nyelv kiértékelési szabálya adja http://www.doksihu Egyéb osztályozások  Utasítás(parancs)orientált nyelv: alapelemei utasítások, a program végrehajtása ezek egymás utáni elvégzése  Deklaratív nyelv: a programban csak a problémát fogalmazzuk meg, a rendszer ennek alapján automatikusan állít elő megoldást