T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una...

21
TRADUCTORES EDT CON ANTLR

Transcript of T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una...

Page 1: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

TRADUCTORES EDT CON ANTLR

Page 2: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

CASO DE PRUEBA EDT CON ANTLR

A continuación realizaremos una representación del árbol generado para la siguiente operación aritmética:

345+(3*46-(34+67)+333)*2;

Page 3: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

f returns [int fresul=0]: num=NUMERO {int v=Integer.parseInt($num.text); $fresul=v;};

Page 4: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

e1 [int n1] returns [int resultado=0] : OPSUMA t{$resultado=$n1+$t.valor;} n=e1[$resultado]{$resultado=n;}

Page 5: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

f returns [int fresul=0]: '(' r=e{$fresul=r;} ')'

Page 6: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

f returns [int fresul=0]: num=NUMERO {int v=Integer.parseInt($num.text); $fresul=v;};

Page 7: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

t1 [int n1] returns [int resultado=0] : OPMULT f{$resultado=$n1*$f.fresul;} n=t1[$resultado]{$resultado=n;}

Page 8: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

f returns [int fresul=0]: num=NUMERO {int v=Integer.parseInt($num.text); $fresul=v;};

Page 9: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

e1 [int n1] returns [int resultado=0] : OPRESTA t{$resultado=$n1-$t.valor;} n=e1[$resultado]{$resultado=n;}

Page 10: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

f returns [int fresul=0]: '(' r=e{$fresul=r;} ')'

Page 11: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

f returns [int fresul=0]: num=NUMERO {int v=Integer.parseInt($num.text); $fresul=v;};

Page 12: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

e1 [int n1] returns [int resultado=0] : OPSUMA t{$resultado=$n1+$t.valor;} n=e1[$resultado]{$resultado=n;}

Page 13: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

f returns [int fresul=0]:num=NUMERO {int v=Integer.parseInt($num.text);

$fresul=v;};

Page 14: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

f returns [int fresul=0]: '(' r=e{$fresul=r;} ')'

Page 15: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

e1 [int n1] returns [int resultado=0] : OPSUMA t{$resultado=$n1+$t.valor;} n=e1[$resultado]{$resultado=n;}

Page 16: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

f returns [int fresul=0]: num=NUMERO {int v=Integer.parseInt($num.text);

$fresul=v;};

Page 17: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

f returns [int fresul=0]: '(' r=e{$fresul=r;} ')'

Page 18: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

t1 [int n1] returns [int resultado=0] : OPMULT f{$resultado=$n1*$f.fresul;} n=t1[$resultado]{$resultado=n;}

Page 19: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

f returns [int fresul=0]: num=NUMERO {int v=Integer.parseInt($num.text); $fresul=v;};

Page 20: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

a: e SEMICOLON { System.out.println("\n\nReconocida expresion aritmetica. Valor final: "+$e.resultado); } a

Page 21: T RADUCTORES EDT CON ANTLR. CASO DE PRUEBA EDT CON ANTLR A continuación realizaremos una representación del árbol generado para la siguiente operación.

a : ;