Compiladores
* Analisador léxico
Identifica os tokens, verificando os símbolos do alfabeto.
Ex.:
inteiro soma, n1,n2; --> 7 tokens, 18 lexemas.
<int> <identificador,1><,><identificador,2><,><identificador,3><;>
* Analisado sintático: Verifica a ordem dos tokens, verifica se a estrutura gramatical do programa soma = n1+n2; atribuição _________________________ id := expressão _______________ Id + id Soma n1 n2
* Analisador semântico:
Determina se as estruturas sintáticas fazem sentido ou não
Real soma; soma = n1+n2; atribuição _________________________ Id1 := expressão _______________ Id2 + id3 Soma n1 n2
Inttoreal inttoreal
* Gerador de código intermediário:
Gera uma representação intermediária explícita do programa fonte. Sendo de fácil tradução para o programa alvo. t1 := inttoreal(n2) t2 := inttoreal(n1) t3 := t2 + t1 id1 := t3
* Otimizado de código Faz uma otimização do código intermediário e tenta melhorar o código