70 likes | 165 Views
IV – Análise semântica. DEI. Implementação da tabela de símbolos Verificação estática Bibliografia aconselhada: Aho, Sethi e Ullman – capítulo 6 Crespo – capítulo 6. Jorge Morais. LFA 1999/2000 - 1. Tabelas de símbolos. DEI. Inserção e pesquisa eficiente dos identificadores
E N D
IV – Análise semântica DEI • Implementação da tabela de símbolos • Verificação estática • Bibliografia aconselhada: • Aho, Sethi e Ullman – capítulo 6 • Crespo – capítulo 6 Jorge Morais LFA 1999/2000 - 1
Tabelas de símbolos DEI • Inserção e pesquisa eficiente dos identificadores • Capacidade de armazenar atributos para diferentes tipos de identificadores • Visibilidade nas várias fases da compilação • Versatilidade na verificação de tipos Jorge Morais LFA 1999/2000 - 2
Inserção ordenada de informação Pesquisa de informação eficiente Existência de algoritmos de balanceamento de árvores binárias Árvores binárias DEI Jorge Morais LFA 1999/2000 - 3
Divisão da informação em várias parcelas Função de hashing:Função simples que faz essa divisão e acede rapidamente ao local de armazenamento Tabelas de hashing DEI Jorge Morais LFA 1999/2000 - 4
Verificação estática DEI • Verificação de tipos: verificar se os tipos de duas variáveis numa operação são compatíveis • Verificação de fluxo de controlo: verificar se algumas instruções de fluxo de controlo estão bem definidas: • goto label só é possível se existir label • break só é possível dentro dum ciclo Jorge Morais LFA 1999/2000 - 5
Verificação estática (cont.) DEI • Unicidade: verificação da unicidade de algumas construções: • funções definidas uma única vez • switch-case com alternativas únicas • Verificação relacionada com nomes Jorge Morais LFA 1999/2000 - 6
Verificação de tipos DEI • Verificação de tipos pode ser realizada em: • Expressões • Instruções • Funções • Equivalência de tipos • Conversão de tipos • Tipos polimórficos • Funções polimórficas Jorge Morais LFA 1999/2000 - 7