Datos Identificativos | 2024/25 | |||||||||||||
Asignatura | Procesamento de Linguaxes | Código | 614G01067 | |||||||||||
Titulación |
|
|||||||||||||
Descriptores | Ciclo | Período | Curso | Tipo | Créditos | |||||||||
Grao | 1º cuadrimestre |
Cuarto | Optativa | 6 | ||||||||||
|
Temas | Subtemas |
Tema I. Introducción | 1.1 Estructura dun compilador. 1.2 Exemplo das fases dun compilador. |
Tema II. Linguaxes e Gramáticas | 2.1 Notación e clasificación de Chomsky. 2.2 Gramáticas de contexto libre (GCL) e notación BNF. 2.3 Mellora e simplificación de gramáticas. |
Tema III. Análise Léxica | 3.1 Tipos de máquinas recoñecedoras ou autómatas. 3.2 Autómatas Finitos. 3.3 Conversión entre gramática regular, expresión regular e autómata finito. 3.4 Implementación de autómatas. |
Tema IV. Análise Sintáctica (Parsing) | 4.1 Máquinas teóricas, mecanismos con retroceso 4.2 Algoritmos sen retroceso. 4.2.1 Análise sintáctica ascendente por precedencia simple. 4.2.2 Analizadores descendentes LL(K). 4.2.3 Analizadores ascendentes LR(k). 4.2.4 Xenerador de analizadores sintácticos YACC. |
Tema V. Análise Semántica | 5.1 Definicións dirixidas pola sintáxis. 5.2 Esquema de traducción. 5.3 Comprobacións en tempo de compilación. |
Tema VI. Xeneración de Código | 6.1 Linguaxes intermedios. 6.2 Xeneración de código intermedio. 6.3 Xeneración de código dende linguaxe intermedio. |
Tema VII. Optimización de Código | 7.1 Algoritmo de Nakata. 7.2 Lazos nos grafos de fluxo. 7.3 Análisie global do fluxo de datos. 7.4 Solución iterativa das ecuacións de fluxo de datos. |
Tema VIII. Erros | 8.1 Tipos de erros. 8.2 Recuperación de erros léxico-gráficos. |
Tema IX. Intérpretes e Complementos | 9.1 Estructura dun intérprete actual. 9.2 Arquitectura neutral de Java. |