Escolar Documentos
Profissional Documentos
Cultura Documentos
Checagem de tipo
2/10
2
Analisador Semântico
Não existe uma metodologia padrão para sua
construção
Depende da gramática
3/10
3
Analisador Semântico
Utiliza-se a Gramática de Atributos
4/10
4
Analisador Semântico
Os atributos podem ser de dois tipos:
Sintetizados: é definido pelos atributos dos
filhos e dele mesmo
5/10
5
Analisador Semântico
Com isso temos dois tipos de SDD
S-Atribuídas: todo o atributo é sintetizado.
Utilizado na análise ascendente.
6/10
6
Analisador Semântico
7/10
7
Analisador Semântico
1) DV → D MV | λ
2) MV → ; DV | λ
3) D → T {L.inh = T.syn} L
4) T → int {T.syn = “int”}| float {T.syn = “float”}
5) L → id {addEntry(id.entry, L.inh), L’.inh = L.inh} L’
6) L’ → , {L’.inh = L.inh} L | λ {L’.syn = L.inh}
8/10
8
Exercício
Implementa a gramática com análise
semântica
V →DV ' | λ
V ' →;V | λ
D→var L : T
T →int | float
L→id L '
L ' →, L | λ
9/10
9
Referências Bibliográficas
Livro:
Compiladores: Princípios, técnicas e
ferramentas. Alfred V. Aho, et al
10/10
10