Anar al contingut (clic a Intro)
UdG Home UdG Home
UdG 30 anys
Tancar
Menú

Estudia a la UdG

Dades generals

Curs acadèmic:
2021
Descripció:
Proporcionar als alumnes els coneixements bàsics de l'estructura i el funcionament d'un compilador.
Crèdits ECTS:
5

Grups

Grup A

Durada:
Semestral, 1r semestre
Professorat:
Josep Suy Franch
Idioma de les classes:
Català (90%), Anglès (10%)

Competències

  • CT06 Disenyar propostes creatives
  • CT08 Planificar i organitzar les propostes i projectes
  • CT11 Prendre decisions per la resolució de situacions diverses
  • CC1 Capacitat per a tenir un coneixement profund dels principis fonamentals i models de la computació i saber-los aplicar per a intentar, seleccionar, valorar, modelar, i crear nous conceptes, teories, usos i desenvolupaments tecnològics relacionats amb la informàtica.
  • CC2 Capacitat per a conèixer els fonaments teòrics dels llenguatges de programació i les tècniques de procesament lèxic, sintàctic i semàntic associades, i saber aplicar-les per a la creació, disseny i processament de llenguatges.
  • CC3 Capacitat per avaluar la complexitat computacional d'un problema, conèixer estratègies algorítmiques que poguin conduir a la seva resolució i recomenar, desenvolupar i implementar aquella que garanteixi el millor rendiment d'acord amb els requisits establerts.

Continguts

1. Introducció.

          1.1. Traductors. Compiladors i intèrprets.

          1.2. Esquema d'un compilador

2. Anàlisi lèxic.

          2.1. Descripció i tasques.

          2.2. Especificació dels Tokens.

          2.3. Expressions regulars i llenguatges regulars.

          2.4. Programació d'un autòmat finit determinista.

3. Gramàtiques lliures de context.

          3.1. Gramàtiques. Arbre de derivació.

          3.2. Ambigüitat. Recursivitat.

          3.3. Anul·lable. Primer. Següent.

          3.4. Manipulacions de gramàtiques

4. Anàlisi sintàctic.

          4.1. Descripció, tasques i tipus.

          4.2. Anàlisi sintàctic descendent.

          4.3. Anàlisi sintàctic ascendent.

5. Anàlisi semàntic. Taula de símbols. Generació de codi intermedi.

          5.1. Característiques i tasques.

          5.2. Gramàtiques atribuïdes.

          5.3. Esquema de traducció atribuït.

          5.4. Taula de símbols.

          5.5. Generació de codi intermedi.

          5.6. Exemples

6. Optimització.

          6.1. Descripció i tipus.

          6.2. Optimització en blocs bàsics.

          6.3. Optimització en bucles.

          6.4. Optimització depenent de la màquina.

7. Dissenyar i implementar un compilador per a un llenguatge senzill.

          7.1. Descipció del llenguatge

          7.2. Aàlisi lèxic i sintàctic

          7.3. Semàntica i generació de codi sobre Bytecode

Activitats

Tipus d’activitat Hores amb professor Hores sense professor Hores virtuals amb professor Total
Anàlisi / estudi de casos 33,50 61,00 0 94,50
Sessió participativa 16,50 14,00 0 30,50
Total 50,00 75,00 0 125

Bibliografia

  • Aho, Alfred V (1990 ). Compiladores : principios, técnicas y herramientas . Argentina [etc.]: Addison-Wesley Iberoamericana. Catàleg
  • Parr, Terence (cop. 2007 ). The Definitive ANTLR reference guide : building domain-specific languages . Raleigh [ etc.]: The Pragmatic bookshelf. Catàleg
  • Wilhelm, Reinhard (1995 ). Compiler design . Wokingham, [etc.]: Addison-Wesley. Catàleg

Avaluació i qualificació

Activitats d'avaluació:

Descripció de l'activitat Avaluació de l'activitat % Recuperable
Teoria i exercicis Tema 2 Prova Lèxica 14
Teoria i exercicis Tema 4 Prova Sintàctica 18
Teoria i exercicis Tema 5 Prova semàntica. Generació Codi 18
Teoria i exercicis Tema 6 Prova Optimització 10
Pràctiques Realització d'un compilador d'un llenguatge senzill 40 No

Qualificació

Mínim examen 4,5 sobre 10
Mínim pràctiques 4,5 sobre 10

Criteris específics de la nota «No Presentat»:
Si no es presentaa cap prova i a l'examen i/o no realitza les pràctiques.

Avaluació única:
Consistirà en l'examen final i la recuperació de l'examen de teoria, amb un valor del 60% de l'assignatura. Les pràctiques són obligatòries.

Requisits mínims per aprovar:
Per considerar superada l’assignatura, caldrà obtenir una qualificació mínima de la mitjana ponderada de 5.0

Tutoria

Per email i/o telemàticament sota demanda dels estudiants.

Comunicacio i interacció amb l'estudiantat

A classe i a les hores de totoria. També es poden demanar reunions telemàtiques

Observacions

Tota l'assignatura serà presencial.

Assignatures recomanades

  • Fonaments de computació

Escull quins tipus de galetes acceptes que el web de la Universitat de Girona pugui guardar en el teu navegador.

Les imprescindibles per facilitar la vostra connexió. No hi ha opció d'inhabilitar-les, atès que són les necessàries pel funcionament del lloc web.

Permeten recordar les vostres opcions (per exemple llengua o regió des de la qual accediu), per tal de proporcionar-vos serveis avançats.

Proporcionen informació estadística i permeten millorar els serveis. Utilitzem cookies de Google Analytics que podeu desactivar instal·lant-vos aquest plugin.

Per a oferir continguts publicitaris relacionats amb els interessos de l'usuari, bé directament, bé per mitjà de tercers (“adservers”). Cal activar-les si vols veure els vídeos de Youtube incrustats en el web de la Universitat de Girona.