Analisador semantico
FACNET – Faculdade de Negócios e Tecnologias da Informação
SESLA – Sociedade de Ensino Superior do Lago
Curso de Bacharelado em Sistemas de Informação
Disciplina: Fundamentos da Computação e Compiladores
Turma: BSI-7A
Professor: Reinaldo Mangialardo
Analisador Semântico
Gustavo Mendes Pereira
Luis Henrique de Araújo Carvalho
Renato Souza de Almeida
Ulisses Alves da Conceição
Brasília, 01 de Dezembro de 2011
Analisador Semântico
Gustavo Mendes Pereira
Luis Henrique de Araújo Carvalho
Renato Souza de Almeida
Ulisses Alves da Conceição
Professor: Reinaldo Mangialardo
Fundamentos da Computação e Compiladores
FACNET – Faculdade de Negócios e Tecnologias da Informação
Dezembro de 2011
Sumário
1. Tradução dirigida pela Sintase 4
1.1 Definição e atribuições 4
1.2 Verificação de Contexto 7
2. Tabelas de Símbolos 9
2.1. Atributos dos nomes dos identificadores 9
2.2. HASHING 16
3. Exemplo prático de construção de uma ANALISE SEMÂNTICA 21
3.1. Exemplo 21
4. Referências Bibliográficas 23
Tradução dirigida pela Sintase
1 Definição e atribuições
Semântica está relacionada com o significado. Um programa pode estar sintaticamente correto mas não ter significado, pois contem erros semânticos. A frase acima, “eu vamos para o praia”, é sintaticamente incorreta porque viola as regras da conjugação de verbos e de concordância.
A fase de análise semântica de um compilador conecta as definições das variáveis com sua utilização, verifica se cada expressão possui um tipo correto e traduz a análise sintática para uma representação mais simples visando à geração de código de máquina [Appel e Palsberg, 2002].
Dessa forma, pode-se dizer que o objetivo da análise semântica é trabalhar no nível de inter-relacionamento entre partes distintas do programa. As tarefas básicas desempenhadas durante a análise semântica geralmente incluem a verificação de