Difference between revisions of "Compiladores"

From Wiki**3

(Testes de Avaliação (por data))
(Aulas Práticas)
 
(29 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
{{NAVCompiladores}}
 
{{NAVCompiladores}}
 
__NOTOC__
 
__NOTOC__
 +
{{Suggestion|https://bit.ly/co-wiki}}
 
== Tópicos Teóricos ==
 
== Tópicos Teóricos ==
  
Line 10: Line 11:
  
 
== Aulas Práticas ==
 
== Aulas Práticas ==
 +
Plano das aulas: https://bit.ly/co24-plano
  
* [[Compiladores/Aula Prática 01|Aula Prática 01]] - Revisões sobre programação em C++.
+
* [[Compiladores/Aula Prática 01|Semana 1.1]] - Revisões sobre programação em C++.
* [[Compiladores/Aula Prática 02|Aula Prática 02]] - Revisões sobre padrões de desenho.
+
* [[Compiladores/Aula Prática 02|Semana 1.2]] - Modelação de conceitos da linguagem do projecto. Revisões sobre padrões de desenho.
* [[Compiladores/Aula Prática 03|Aula Prática 03]] - Análise lexical. Analisadores lexicais.
+
* [[Compiladores/Aula Prática 03|Semana 2.1]] - Análise lexical. Analisadores lexicais.
* [[Compiladores/Aula Prática 04|Aula Prática 04]] - Análise lexical com a ferramenta Flex.
+
* [[Compiladores/Aula Prática 04|Semana 2.2]] - Análise lexical com a ferramenta Flex.
* [[Compiladores/Aula Prática 05|Aula Prática 05]] - Gramáticas. Conjuntos FIRST e FOLLOW. Análise sintáctica descendente LL(1).
+
* [[Compiladores/Aula Prática 05|Semana 3.1]] - Gramáticas. Conjuntos FIRST e FOLLOW. Análise sintáctica descendente LL(1).
* [[Compiladores/Aula Prática 06|Aula Prática 06]] - Gramáticas atributivas. Atributos herdados e atributos sintetizados.
+
* [[Compiladores/Aula Prática 06|Semana 3.2]] - Gramáticas atributivas. Atributos herdados e atributos sintetizados. YACC.
* [[Compiladores/Aula Prática 07|Aula Prática 07]] - Ferramenta YACC.
+
<!--* [[Compiladores/Aula Prática 07|Aula Prática 07]] - Ferramenta YACC.-->
* [[Compiladores/Aula Prática 08|Aula Prática 08]] - Análise ascendente LR(0) e SLR(1). Items LR(0).
+
* [[Compiladores/Aula Prática 08|Semana 4.1]] - Análise ascendente LR(0) e SLR(1). Items LR(0).
* [[Compiladores/Aula Prática 09|Aula Prática 09]] - Análise sintáctica ascendente LALR(1). Lookaheads. Items LR(1).
+
* [[Compiladores/Aula Prática 09|Semana 4.2]] - Análise sintáctica ascendente LALR(1). Lookaheads. Items LR(1).
* [[Compiladores/Aula Prática 10|Aula Prática 10]] - Processamento semântico.  
+
* Semana 5.1: (apoio ao projecto)
* [[Compiladores/Aula Prática 11|Aula Prática 11]] - Processamento semântico e geração de código Postfix (não optimizado).
+
* [[Compiladores/Aula Prática 10|Semana 5.2]] - Processamento semântico. Verificação de tipos.
* [[Compiladores/Aula Prática 12|Aula Prática 12]] - Processamento semântico e geração de código Postfix (não optimizado).
+
* [[Compiladores/Aula Prática 11|Semana 6.1]] - Processamento semântico e geração de código Postfix (não optimizado).
* [[Compiladores/Aula Prática 13|Aula Prática 13]] - Processamento semântico e geração de código Postfix. Optimização.
+
* [[Compiladores/Aula Prática 12|Semana 6.2]] - Processamento semântico e geração de código Postfix (não optimizado).
 +
* [[Compiladores/Aula Prática 13|Semana 7.1]] - Processamento semântico e geração de código Postfix. Optimização.
 +
* Semana 7.2: (apoio ao projecto)
  
 
[[category:Compiladores]]
 
[[category:Compiladores]]
Line 30: Line 34:
 
== Pautas ==
 
== Pautas ==
  
* {{PautaAberta}} [[Compiladores/Pautas 2016-2017|Pautas 2016-2017]] - resultados e critérios de avaliação
+
* {{PautaAberta}} [[Compiladores/Pautas 2023-2024|Pautas 2023-2024]]
* {{PautaFechada}} [[Compiladores/Pautas 2015-2016|Pautas 2015-2016]] - resultados e critérios de avaliação
+
* {{PautaFechada}} Pautas de anos anteriores: [[Compiladores/Pautas 2022-2023|2022-2023]] [[Compiladores/Pautas 2021-2022|2021-2022]] [[Compiladores/Pautas 2020-2021|2020-2021]] [[Compiladores/Pautas 2019-2020|2019-2020]] [[Compiladores/Pautas 2018-2019|2018-2019]] [[Compiladores/Pautas 2017-2018|2017-2018]] [[Compiladores/Pautas 2016-2017|2016-2017]] [[Compiladores/Pautas 2015-2016|2015-2016]] [[Compiladores/Pautas 2014-2015|2014-2015]]
* {{PautaFechada}} [[Compiladores/Pautas 2014-2015|Pautas 2014-2015]] - resultados e critérios de avaliação
 
  
== Testes de Avaliação (por data)  ==
+
<!--== Testes de Avaliação (por data)  ==
 
Note-se que alguns enunciados cont&ecirc;m quest&otilde;es que n&atilde;o s&atilde;o abordadas no ano lectivo corrente.
 
Note-se que alguns enunciados cont&ecirc;m quest&otilde;es que n&atilde;o s&atilde;o abordadas no ano lectivo corrente.
  
[https://fenix.ist.utl.pt/downloadFile/3779579650124 Teste 1 2013], [https://fenix.ist.utl.pt/downloadFile/3779579731286 Teste 2 2013], [https://fenix.ist.utl.pt/downloadFile/3779579756961 Teste 1 2013 (recurso)], [https://fenix.ist.utl.pt/downloadFile/3779579756962 Teste 2 2013 (recurso)]
+
[https://fenix.ist.utl.pt/downloadFile/3779579650124 T1 2013], [https://fenix.ist.utl.pt/downloadFile/3779579731286 T2 2013], [https://fenix.ist.utl.pt/downloadFile/3779579756961 T1R 2013], [https://fenix.ist.utl.pt/downloadFile/3779579756962 T2R 2013],
[https://dspace.ist.utl.pt/bitstream/2295/933775/1/201104020900-t1.pdf Teste 1 2011], [https://dspace.ist.utl.pt/bitstream/2295/933774/1/201106031130-t2.pdf Teste 2 2011]
+
[https://dspace.ist.utl.pt/bitstream/2295/933775/1/201104020900-t1.pdf T1 2011], [https://dspace.ist.utl.pt/bitstream/2295/933774/1/201106031130-t2.pdf T2 2011],
[https://dspace.ist.utl.pt/bitstream/2295/642980/1/201004171100-t1a.pdf Teste 1(a) 2010], [https://dspace.ist.utl.pt/bitstream/2295/642981/1/201004171100-t1b.pdf Teste 1(b) 2010], [https://dspace.ist.utl.pt/bitstream/2295/680027/1/201006140900-t2a.pdf Teste 2(a) 2010]
+
[https://dspace.ist.utl.pt/bitstream/2295/642980/1/201004171100-t1a.pdf T1a 2010], [https://dspace.ist.utl.pt/bitstream/2295/642981/1/201004171100-t1b.pdf T1b 2010], [https://dspace.ist.utl.pt/bitstream/2295/680027/1/201006140900-t2a.pdf T2a 2010],
[https://dspace.ist.utl.pt/bitstream/2295/325068/1/200904281900-t1.pdf Teste 1 2009], [https://dspace.ist.utl.pt/bitstream/2295/325070/1/200906121900-t2.pdf Teste 2 2009]  
+
[https://dspace.ist.utl.pt/bitstream/2295/325068/1/200904281900-t1.pdf T1 2009], [https://dspace.ist.utl.pt/bitstream/2295/325070/1/200906121900-t2.pdf T2 2009],
[https://dspace.ist.utl.pt/bitstream/2295/303539/1/t1a.pdf Teste 1 2008], [https://dspace.ist.utl.pt/bitstream/2295/303541/1/t1ra.pdf Teste 1 2008 (recurso)], [https://dspace.ist.utl.pt/bitstream/2295/318398/1/t2ra.pdf Teste 2 2008 (recurso)]  
+
[https://dspace.ist.utl.pt/bitstream/2295/303539/1/t1a.pdf T1 2008], [https://dspace.ist.utl.pt/bitstream/2295/303541/1/t1ra.pdf T1R 2008], [https://dspace.ist.utl.pt/bitstream/2295/318398/1/t2ra.pdf T2R 2008],
[https://dspace.ist.utl.pt/bitstream/2295/160436/1/co04e1.pdf Teste 1 2004]
+
[https://dspace.ist.utl.pt/bitstream/2295/160436/1/co04e1.pdf T1 2004],
[https://dspace.ist.utl.pt/bitstream/2295/160431/1/co03e1a.pdf Teste 1 2003]
+
[https://dspace.ist.utl.pt/bitstream/2295/160431/1/co03e1a.pdf T1 2003],
[https://dspace.ist.utl.pt/bitstream/2295/160426/1/co02e1a.pdf Teste 1 2002]
+
[https://dspace.ist.utl.pt/bitstream/2295/160426/1/co02e1a.pdf T1 2002],
[https://dspace.ist.utl.pt/bitstream/2295/160423/1/co01e1.pdf Exame 3 2001]
+
[https://dspace.ist.utl.pt/bitstream/2295/160423/1/co01e1.pdf E3 2001],
[https://dspace.ist.utl.pt/bitstream/2295/160420/1/co00e1.pdf Teste 1 2000]
+
[https://dspace.ist.utl.pt/bitstream/2295/160420/1/co00e1.pdf T1 2000]
 
+
-->
 
[[category:Compiladores]]
 
[[category:Compiladores]]
 
[[category:Ensino]]
 
[[category:Ensino]]
 
[[en:Compilers]]
 
[[en:Compilers]]

Latest revision as of 12:10, 9 February 2024

Compiladores
Introdução ao Desenvolvimento de Compiladores
Aspectos Teóricos de Análise Lexical
A Ferramenta Flex
Introdução à Sintaxe
Análise Sintáctica Descendente
Gramáticas Atributivas
A Ferramenta YACC
Análise Sintáctica Ascendente
Análise Semântica
Geração de Código
Tópicos de Optimização

Tópicos Teóricos

Projecto

Aulas Práticas

Plano das aulas: https://bit.ly/co24-plano

  • Semana 1.1 - Revisões sobre programação em C++.
  • Semana 1.2 - Modelação de conceitos da linguagem do projecto. Revisões sobre padrões de desenho.
  • Semana 2.1 - Análise lexical. Analisadores lexicais.
  • Semana 2.2 - Análise lexical com a ferramenta Flex.
  • Semana 3.1 - Gramáticas. Conjuntos FIRST e FOLLOW. Análise sintáctica descendente LL(1).
  • Semana 3.2 - Gramáticas atributivas. Atributos herdados e atributos sintetizados. YACC.
  • Semana 4.1 - Análise ascendente LR(0) e SLR(1). Items LR(0).
  • Semana 4.2 - Análise sintáctica ascendente LALR(1). Lookaheads. Items LR(1).
  • Semana 5.1: (apoio ao projecto)
  • Semana 5.2 - Processamento semântico. Verificação de tipos.
  • Semana 6.1 - Processamento semântico e geração de código Postfix (não optimizado).
  • Semana 6.2 - Processamento semântico e geração de código Postfix (não optimizado).
  • Semana 7.1 - Processamento semântico e geração de código Postfix. Optimização.
  • Semana 7.2: (apoio ao projecto)

Pautas