Microprogramação



Baixar 117,3 Kb.
Encontro14.05.2017
Tamanho117,3 Kb.






PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO GRANDE DO SUL

FACULDADE DE INFORMÁTICA



DEPARTAMENTO: Fundamentos da Computação

CURSO: Bacharelado em Ciência da Computação

DISCIPLINA: Compiladores I

CÓDIGO: 46187 CRÉDITOS: 04 CARGA HORÁRIA: 60 horas-aula

VALIDADE: a partir de 2001/II

OBJETIVOS:O cumprimento da disciplina busca dar ao aluno, ao final do semestre, condições de:


  1. Descrever, formalmente, os componentes de um compilador;




  1. Definir características de linguagens de programação necessárias à compilação;




  1. Elaborar rotinas para análise lexicográfica, gerenciamento de tabelas de símbolos, análise sintática e análise semântica;




  1. Implementar as principais técnicas de analise gramatical de um compilador



EMENTA:
Tradução e compilação, etapas da compilação. Análise Léxica : tabela de símbolos. Análise Sintática: construção e geração de analisadores, precedência de operadores, LR. Tradução dirigida por sintaxe : translação, definições, gramática de atributos. Análise semântica estática : verificação de tipos, escopo, equivalência e compatibilidade, coerção, sobrecarga e polimorfismo.
N da Unidade: 01

CONTEÚDO: Introdução a Compilação
1.1. Introdução : Fases de um compilador

1.2. Fase de Análise

1.3. Fase de Síntese

1.4. Tabela de símbolos

1.5. Detecção de erros

N da Unidade: 02

CONTEÚDO: Análise Léxica
2.1. Funções do Analisador Léxico

2.2. A relação: Analisadores Léxicos x Autômatos Finitos x Expressões Regulares

2.3. Implementação de Analisadores Léxicos

2.4. Tabela de símbolos

2.5. Ferramentas para construção de Analisadores Léxicos
N da Unidade: 03

CONTEÚDO: Análise Sintática
3.1. Funções do Analisador Sintático

3.2. A relação : Analisadores Sintáticos x Gramáticas Livres de Contexto

3.3. Analisadores Sintáticos Descendentes

3.3.1. Analisador Preditivo

3.3.2. Analisador Sintático Descendente Recursivo

3.4. Analisadores Sintáticos Ascendentes

3.4.1. Precedência de Operadores

3.4.2. Técnicas LR

3.5. Ferramentas para construção de Analisadores Sintáticos
N da Unidade: 04

CONTEÚDO: Tradução dirigida por Sintaxe
4.1. Introdução a Tradução Dirigida por Sintaxe

4.2. Definição Dirigida por Sintaxe

4.3. Esquemas de Tradução
N da Unidade: 05

CONTEÚDO: Verificação Semântica
5.1. Sistemas de tipos

5.2. Sub-linguagem de tipos genérica

5.3. Verificação de tipos estática x dinâmica

5.4. Verificação de tipos simples: expressões e comandos

5.5. Equivalência de tipos

5.6. Coerção, Sobrecarga, Polimorfismo
Bibliografia

  • LIVRO(S) TEXTO




  1. AHO, A.V. ; SETHI, S. & ULMMAN, J. D. Compilers; Principles, Techiniques and Tools. Reading, Addison-Wesley, 1986



  • LIVRO(S) REFERENCIADO(S)




  1. APPEL, A. W.. Modern Compiler Implementation in Java. Cambridge University Press, 1997.




  1. SETZER, V. W. & MELO, I. S. H. A construção de um compilador. Rio de Janeiro, Campus, 1983.



  • OUTRAS REFERENCIAS




  1. CALINGAERT, P. Assemblers, Compilers and Program Translation. Computer Science Press, Rockville, 1979.




  1. HOLUB, A. I. COMPILER DESING IN"C", Prentice-Hall Intrernational Editions.




  1. KOWALTOWSKY, T. Implementação de linguagens de programação. Rio de Janeiro, Guanabara Dois, 1983.




  1. MELO, J. J. Introdução à compilação. LTC, RJ, 1987.




  1. PREMBLEY, J. P. 8 SORENSON, P. G. The Theory and Practice of Compiler Writing. Mc Graw-Hill, International Editions, 1989.




  1. LEVINE, J. R. ; MASON, T. ; BROWN, D. Lex & yacc. Cambridge : O'Reilly, 1998. 3



  • Software de Apoio

1. Lex & YACC




Emitido em: 14/05/17 - 11:02

Página de 3




Carimbo e Assinatura da Unidade:









©livred.info 2017
enviar mensagem

    Página principal