DADES IDENTIFICATIVES 2010_11
Assignatura (*) COMPILADORS II Codi 175171111
Ensenyament
Intel·ligència Artificial (2006)
Cicle 2n
Descriptors Crèd. Tipus Curs Període
4.5 Obligatòria Primer Únic anual
Llengua d'impartició
Català
Departament Enginyeria Informàtica i Matemàtiques
Coordinador/a
GÓMEZ JIMÉNEZ, SERGIO
Adreça electrònica sergio.gomez@urv.cat
Professors/es
GÓMEZ JIMÉNEZ, SERGIO
Web http://moodle.urv.cat/
Descripció general i informació rellevant Introduir a l'alumne en les tècniques bàsiques de disseny de compiladors. S’estudia la construcció de la part dorsal del compilador.

Competències
Tipus A Codi Competències Específiques
  Recerca
  AR13 Analitzar, dissenyar i desenvolupar eines de programació
Tipus B Codi Competències Transversals
  Comú
  BC4 Resoldre problemes de manera efectiva.
  BC11 Treballar en equip i gestionar equips.
  BC14 Planificació i organització.
Tipus C Codi Competències Nuclears
  Comú

Objectius d'aprenentatge
Objectius Competències
Conèixer les característiques del codi intermedi i tècniques per a la seva generació, així com la seva implementació efectiva AR13
Conèixer el funcionament de l'entorn d'execució dels programes AR13
BC4
Conèixer les característiques del codi objecte i tècniques per a la seva generació AR13
Conèixer fonts i tècniques d'optimització en la generació de codi AR13
Treballar en grup en les pràctiques de laboratori BC11
BC14

Continguts
Tema Subtema
Entorn d’execució Assignació de la memòria: codi, dades estàtiques i dinàmiques, registres d’activació. Pila d’activació: seqüències de crida i de retorn. Accés a noms no locals. Pas de paràmetres. Assignació dinàmica de la memòria.
Generació de codi intermedi Llenguatges intermedis: arbres sintàctics, GDA, codi de tres adreces. Declaracions. Assignacions. Expressions booleanes i flux de control: backpatching. Crides a subprogrames.
Generació de codi objecte La màquina objecte. Administració de la memòria. Blocs bàsics i grafs de flux. Un generador de codi simple. Distribució i assignació de registres. Generació de codis a partir de GDA.
Optimització de codi Principals fonts d’optimització. Optimització de blocs bàsics. Llaços en els grafs de flux. Anàlisi global del flux de dades. Transformacions per a millorar el codi.

Planificació
Metodologies  ::  Proves
  Competències (*) Hores a classe Hores fora de classe (**) Hores totals
Activitats Introductòries
2 0 2
 
Sessió Magistral
20 10 30
Resolució de problemes, exercicis a l'aula ordinària
4 4 8
Pràctiques a través de TIC en aules informàtiques
10 5 15
Pràctiques a través de TIC
5 50 55
 
Atenció personalitzada
2 0 2
 
Proves objectives de preguntes curtes
2 0 2
Proves orals
1 0 1
 
(*) En el cas de docència no presencial, són les hores de treball amb suport vitual del professor.
(**) Les dades que apareixen a la taula de planificació són de caràcter orientatiu, considerant l’heterogeneïtat de l’alumnat

Metodologies
Metodologies
  Descripció
Activitats Introductòries Introducció al desenvolupament de l'assignatura i als seus continguts
Sessió Magistral Exposició dels continguts amb disponibilitat dels materials en la bibliografia
Resolució de problemes, exercicis a l'aula ordinària Exercicis pràctics per a la comprensió dels continguts
Pràctiques a través de TIC en aules informàtiques Exposició d’eines per al desenvolupament de solucions i resolució pràctica de problemes
Pràctiques a través de TIC Exercicis pràctics per a assolir experiència i consolidar els coneixements teòrics

Atenció personalitzada
 
Pràctiques a través de TIC
Descripció
Resolució de dubtes sobre els continguts i els exercicis pràctics. Es realitzarà personalment al despatx del professor, o via correu electrònic.

Avaluació
  Descripció Pes
Resolució de problemes, exercicis a l'aula ordinària Avaluació de la participació en la resolució de problemes proposats a l’aula ordinària Punts extra a afegir a la nota final
Pràctiques a través de TIC Avaluació dels exercicis pràctics 60% (mínim un 4)
Proves objectives de preguntes curtes Avaluació dels coneixements teòrics 30% (mínim un 4)
Proves orals Entrevista de defensa de la pràctica final realitzada 10%
 
Altres comentaris i segona convocatòria

Per segona convocatòria: examen final 30%, pràctica final 60%, defensa de la pràctica 10%


Fonts d'informació

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, Addison-Wesley Iberoamericana, 1990

Complementària Fischer, C.N.; LeBlanc, R.J., Crafting a Compiler with C, Benjamin/Cummings, 1991

Recomanacions


Assignatures que es recomana haver cursat prèviament
COMPILADORS I/17012011
(*)La Guia docent és el document on es visualitza la proposta acadèmica de la URV. Aquest document és públic i no es pot modificar, llevat de casos excepcionals revisats per l'òrgan competent/ o degudament revisats d'acord amb la normativa vigent