Limbaje formale şi tehnici de compilare |
trul |
|||||
Cadre didactice indrumatoare |
|
Obiective |
Gramatici si limbaje; clasificarea lui Chomsky; gramatici regulare, automate finite si echivalenta lor; gramatici independente de context, automate push-down si echivalenta lor.
Notiuni de costructia compilatoarelor: fazele compilarii, analiza lexicala, analiza sintactica, analiza semantica. |
Continut |
Cursul urmareste prezentarea notiunilor fundamentale legate de limbaje formale: gramatici (clasificare, gramatici regulare, gramatici independente de context si proprietatile lor), automate finite (deterministe, nedeterministe, transformari, proprietati) si push-down si echivalenta dintre gramatici si automate.
Partea a doua a cursului va contine principalele aspecte legate de constructia compilatoarelor: analiza lexicala, analiza sintactica (diverse metode de analiza sintactica), generare de cod intermediar, optimizare de cod, generare de cod obiect. |
Bibliografie |
1. A.V. AHO, D.J. ULLMAN - Principles of computer design, Addison-Wesley, 1978.
2. A.V. AHO, D.J. ULLMAN - The theory of parsing, translation and compiling, Prentice-Hall, Engl. Cliffs., N.J., 1972, 1973. 3. D. GRIES - Compiler construction for digital computers,, John Wiley, New York, 1971. 4. SIPSER, M., Introduction to the theory of computation, PWS Pulb. Co., 1997. 5. G. MOLDOVAN, V. CIOBAN, M. LUPEA - Limbaje formale si automate. Culegere de probleme, Univ. Babes-Bolyai, Cluj-Napoca, 1996.,l http://math.ubbcluj.ro/~infodist/alf/INDEX.HTM 6. CSÖRNYEI ZOLTÁN, Bevezetés a fordítóprogramok elméletébe, I, II., ELTE, Budapest, 1996 7. L.D. SERBANATI - Limbaje de programare si compilatoare, Ed. Academiei RSR, 1987. 8. CSÖRNYEI ZOLTÁN, Fordítási algoritmusok, Erdélyi Tankönyvtanács, Kolozsvár, 2000. 9. DEMETROVICS JÁNOS-DENEV, J.-PAVLOV, R., A számítástudomány matematikai alapjai, Nemzeti Tankönyvkiadó, Budapest, 1999. |
Evaluare |
Nota finala obtinuta la aceasta disciplina va reflecta atat activitatea la seminar si la laborator cat si cunsotiintele acumulate de studenti.
Nota finala se calculeaza astfel: 25% nota_laborator + 25% nota_seminar + 50% nota_examen. Nota la seminar se va stabile pe baza temelor saptamanale pe care studentii le vor primi. |