Compiladores: PASCALjr - WWW2 - Udesc
Compiladores: PASCALjr - WWW2 - Udesc
Compiladores: PASCALjr - WWW2 - Udesc
- No tags were found...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
OpSubt ExprAr | SubRot |Identificador | NumeroInteiro | NumeroReal |ConstCaracter | ConstStringExercício: Montar a árvore gramatical para a expressão 2 ∗ (X − 5.0) + 10/BA idéia é gerar os elementos de menor precedência mais próximos à raiz da árvoresintática e os de maior precedência, mais próximos às folhas.Novamente temos problemas com a solução proposta: recursão à esquerda. A novagramática após realizado o processo (já estudado) de eliminação da recursão à esquerda,temos:ExprAr → TermoAr ExprAr’ExprAr’ → OpAdic TermoAr ExprAr’ |OpSubt TermoAr ExprAr’ | εTermoAr → FatorAr TermoAr’TermoAr’ → OpMult FatorAr TermoAr’ |OpDivi FatorAr TermoAr’ | εFatorAr → ElementoAr FatorAr’FatorAr’ → OpPote ElementoAr FatorAr’ | εElementoAr → AbrePar ExprAr FechaPar |OpSubt ExprAr | SubRot |Identificador | NumeroInteiro | NumeroReal |ConstCaracter | ConstStringExercício: Montar a árvore sintática para a expressão: 2 ∗ (X − 5.0) + 10/B.Analisando Expressões LógicasUma expressão lógica é, na verdade, uma comparação entre resultados de expressõesaritméticas, ou ainda, a união de duas expressões aritméticas através de um operadorrelacional.São possíveis ainda, expressões lógicas mais complexas através da união de duas expressõeslógicas simples por operadores lógicos.Expr → TermoLog Expr’ TernarioTernario → Interrog Expr DoisPt Expr | εExpr’ → OpLogAnd TermoLog Expr’ |OpLogOr TermoLog Expr’ |OpLogXor TermoLog Expr’ | εTermoLog → FatorLog TermoLog’37