DATOS IDENTIFICATIVOS 2023_24
Asignatura (*) COMPILADORES Código 17234127
Titulación
Grado en Ingeniería Informática (2010)
Ciclo
Descriptores Cr.totales Tipo Curso Periodo
6 Obligatoria Cuarto 1Q
Lengua de impartición
Català
Departamento Ingeniería Informática y Matemáticas
Coordinador/a
GÓMEZ JIMÉNEZ, SERGIO
Correo-e sergio.gomez@urv.cat
ricardo.gonzalez@urv.cat
Profesores/as
GÓMEZ JIMÉNEZ, SERGIO
GONZALEZ MAS, RICARDO
Web http://moodle.urv.cat/
Descripción general e información relevante <p>DESCRIPCIÓN GENERAL DE LA ASIGNATURA: Introducción a la estructura, diseño e implementación de compiladores. Se estudian las partes frontal y dorsal de los compiladores, así como herramientas básicas para la generación de analizadores léxicos y sintácticos.</p>

Competencias
Tipo A Código Competencias Específicas
 CP1 Capacidad para tener un conocimiento profundo de los principios fundamentales y modelos de la computación y saberlos aplicar para interpretar, seleccionar, valorar, modelar y crear nuevos conceptos, teorías, usos y desarrollos tecnológicos relacionados con la informática.
 CP2 Capacidad para conocer los fundamentos teóricos de los lenguajes de programación y las técnicas de procesamiento léxico, sintáctico y semántico asociadas, y saber aplicarlas para la creación, diseño y procesamiento de lenguajes.
Tipo B Código Competencias Transversales
Tipo C Código Competencias Nucleares

Resultados de aprendizaje
Tipo A Código Resultados de aprendizaje
 CP1 Conoce la estructura de un compilador y el entorno de ejecución.
Sabe construir analizadores léxicos y sintácticos para lenguajes de programación.
Sabe generar código de forma dirigida para la sintaxi.
Conoce los conceptos básicos sobre grafos de flujo y su aplicación para la optimitzación del código.
 CP2 Conoce la estructura de un compilador y el entorno de ejecución.
Sabe construir analizadores léxicos y sintácticos para lenguages de programación.
Sabe generar código de forma dirigida para la sintaxi.
Conoce los conceptos básicos sobre grafos de flujo y su aplicación para la optimitzación del código.
Tipo B Código Resultados de aprendizaje
Tipo C Código Resultados de aprendizaje

Contenidos
tema Subtema
Estructura de un compilador a. Análisis léxico
b. Análisis sintáctico
c. Análisis semántico
d. Entorno de ejecución
e. Generación de código intermedio
f. Generación de código objeto
g. Optimizaciones
Integración de analizadores a. Tabla de símbolos
b. Generadores de analizadores léxicos
c. Generadores de analizadores sintácticos
d. Traducción dirigida por la sintaxis
Generación de codigo a. Lenguajes intermedios
b. Generación de código intermedio
c. Máquina objeto
d. Generación de código objeto
Optimizaciones a. Fuentes de optimización
b. Grafos de arroyo
c. Transformaciones del código

Planificación
Metodologías  ::  Pruebas
  Competencias (*) Horas en clase
Horas fuera de clase
(**) Horas totales
Actividades introductorias
1 0 1
Sesión magistral
CP1
CP2
14 14 28
Resolución de problemas/ejercicios en el aula ordinaria
CP1
CP2
5 7.5 12.5
Practicas a través de TIC en aulas informáticas
CP1
CP2
16 9 25
Prácticas a través de TIC
CP1
CP2
7 70 77
Atención personalizada
1 0.5 1.5
 
Pruebas orales
CP1
CP2
1 4 5
 
(*) En el caso de docencia no presencial, serán las horas de trabajo con soporte virtual del profesor.
(**) Los datos que aparecen en la tabla de planificación son de carácter orientativo, considerando la heterogeneidad de los alumnos

Metodologías
Metodologías
  descripción
Actividades introductorias Introducción al desarrollo de la asignatura y a sus contenidos
Sesión magistral Exposición de los contenidos con disponibilidad de los materiales en la bibliografía
Resolución de problemas/ejercicios en el aula ordinaria Ejercicios prácticos para la comprensión de los contenidos
Practicas a través de TIC en aulas informáticas Exposición de herramientas para el desarrollo de soluciones y resolución práctica de problemas
Prácticas a través de TIC Ejercicios prácticos para alcanzar experiencia y consolidar los conocimientos teóricos
Atención personalizada Atención personalizada

Atención personalizada
descripción

Resolución de dudas sobre los contenidos y los ejercicios prácticos. Se realizará personalmente en el despacho del profesor, o vía telemática (correo electrónico, campus virtual, videoconferencia, etc.)


Evaluación
Metodologías Competencias descripción Peso        
Prácticas a través de TIC
CP1
CP2
Evaluación de los ejercicios prácticos 90%
Pruebas orales
CP1
CP2
Entrevista de defensa de las prácticas realizadas 10%
Otros  
 
Otros comentarios y segunda convocatoria

Para segunda convocatoria: prácticas 90%, defensa de las prácticas 10%.

Aunque este curso no se ofrece en Inglés, los estudiantes estranjeros recibirán atención personalizada en Inglés y podran desarrollar sus actividades de evaluación en este idioma.


Fuentes de información

Básica Aho, A.; Lam, M.; Sethi, R.; Ullman, J., Compiladores: Principios, técnicas y herramientas (2a ed.), Addison-Wesley, 2008
Aho, A.; Sethi, R.; Ullman, J., Compiladores: Principios, técnicas y herramientas (1a ed.), Addison-Wesley Iberoamericana, 1990

Complementaria

Recomendaciones


Asignaturas que se recomienda haber cursado previamente
LENGUAJES FORMALES/17234110
(*)La Guía docente es el documento donde se visualiza la propuesta académica de la URV. Este documento es público y no es modificable, excepto en casos excepcionales revisados por el órgano competente o debidamente revisado de acuerdo la normativa vigente.