Notas de Aula - MAC 211 - Laborat�rio de Programa��o
Aula anterior
Aula 15 - 28/4/2009
Processamento de Linguagens de Programa��o
-
Analisador L�xico
- respons�vel por identificar os itens l�xicos nos
c�digo-fonte do programa
- itens l�xicos s�o palavras, n�meros, s�mbolos, etc.
- Analisador Sint�tico
- respons�vel por identificar a estrutura sint�tica do
programa
- e construir uma estrutura de dados (normalmente uma
�rvore sint�tica) para representar este programa em mem�ria
- An�lise Sem�ntica
- respons�vel por definir o que significa cada
comando e gerar o c�digo correspondente
-
Neste curso abordaremos formalmente apenas An�lise L�xica
- Processamento de programas � um tema de
- MAC 316 -
Conceitos de Linguagens de Prorgama��o - constru��o de um
interpretador
- MAC 414 -
Linguagens Formais e
Aut�matos - an�lise sint�tica em profundidade
- MAC 410
- Introdu��o � Compila��o - constru��o de um compilador
-
Vamos aprender an�lise l�xica inicialmente atrav�s de um
exemplo:
- Calculadora HP (nota��o p�s-fixa, tamb�m chamada
de nota��o polonesa)
- Vamos agora a um exemplo mais complexo:
- Calculadora recursiva (nota��o in-fixa, tradicional)
- Exemplo de utiliza��o:
(2*(3+(5*2)));
k[0] := (2+(4/20))-18.32;
k[1] := 3.1415926538*2;
(123 + k[1])*2 + k[0];
2+(K[3]:=9);
- Essa calculadora implementa a gram�tica definida informalmente
a seguir.
- programa = expr ; programa
- expr =
termo + termo | termo - termo | combina��es
de + e -
- termo = fator *
fator | fator / fator | combina��es
de * e /
- fator = NUMERO |
-NUMERO | (expr) | K[expr] | K[expr] := expr
Pr�xima
aula
P�gina de MAC211
P�gina do Fabio
P�gina do DCC