Automata II 10 Ejercicio

TECNOLÓGICO NACIONAL DE MÉXICO INSTITUTO TECNOLÓGICO SUPERIOR DE TEPOSCOLULA INGENIERÍA EN SISTEMAS COMPUTACIONALES SEME

Views 104 Downloads 2 File size 762KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

TECNOLÓGICO NACIONAL DE MÉXICO INSTITUTO TECNOLÓGICO SUPERIOR DE TEPOSCOLULA INGENIERÍA EN SISTEMAS COMPUTACIONALES SEMESTRE: AGOSTO-DICIEMBRE 2019 MATERIA: Lenguajes y Autómatas II DOCENTE: Ing. Edith Santiago Bautista UNIDAD II Generación De Código Intermedio TEMA: Notaciones de Árbol sintaxis N. Prefija N.Post NOMBRES DE INTEGRANTES: -XOCHITL SÁNCHEZ PINEDA -DARÍO SÁNCHEZ LINTON

SEMESTRE: 7 GRUPO: “A” SAN PEDRO Y SAN PABLO TEPOSCOLULA, OAXACA. 24/09/2019

Tabla de contenido INTRODUCCION .............................................................................................................................. 3 1.

NOTACIONE

PREFIJA (2+3) *(4+5)................................................................................. 4



N. Infija: .................................................................................................................................. 4



N. Postfija: ............................................................................................................................. 4 Notaciones (1+2) + (2+3) ....................................................................................................... 5

2. 

N.Infija: ((1+2)+ (2+3)) ....................................................................................................... 5



N. Postfija: 1 2 + 2 3 + + ..................................................................................................... 5 NOTACIONES 5 + (1*3) + 5 .................................................................................................. 5

3. 

N.Infija: (5+(1*3)+5) .............................................................................................................. 5



N. Postfija: 5 1 3 * + 5 + ....................................................................................................... 5 NOTACIONES PREFIJA 6 +5 *(2-1).................................................................................. 6

4. 

N. infija: (6+5*(2-1)) .............................................................................................................. 6



N. Postfija: 6 5 2 1 - * +........................................................................................................ 6 NOTACIONES PREFIJA (3 * 4) / 6-2 ................................................................................... 6

5. 

N. infija: ((3*4)/6-2) ............................................................................................................... 7



N. postfijas: 3 4 * 6 / 2 - ....................................................................................................... 7

6.

NOTACIONES (1*-2) + (3*-1) ................................................................................................ 7

7.

Notaciones ((2*4*1)/ (1+2) – (1*2*3)) + 1 ............................................................................. 8 

N. Infija: (((2*4*1)/(1+2)-(1*2*3))+1)................................................................................... 8



N. posfija: 2 4 * 1 * 1 2 + / 1 2 * 3 * - 1 + ........................................................................... 8 Notaciones –(A +B+C) * (C + D) + (A * B – C)..................................................................... 9

8. 

N. Infija: (-(A+B+C)*(C+D)+(A*B-C)) ................................................................................. 9



N. Postfija: A B + C + C D + * - A B * C - +....................................................................... 9 Notaciones –(A +B+C) * (C + D) + (A + B – C) .................................................................. 10

9. 

N. Infija: (-(A+B+C)*(C+D)+(A+B-C)) .............................................................................. 10



N. Postfija: A B + C + C D + * - A B + C - + .................................................................... 10

10.

Notaciones (A + B) * C....................................................................................................... 11



N. INFIJA: ((A+B)*C) .......................................................................................................... 11



N. Postfija: A B + C * .......................................................................................................... 11

CONCLUSIONES ........................................................................................................................... 11

INTRODUCCION En esta unidad vamos a conocer los código de intermedios y Los análisis sintácticos y semánticos, a algunos compiladores generan una representación intermedia explicita del programa fuente.se puede considerar esta presentación intermedia explícita del programa fuente. Se puede considerar esta representación intermedia como un programa para una maquina abstracta. Esta representación intermedia debe tener dos propiedades importantes, debe ser fácil de producir y fácil de traducir al programa objetos. Se compone de un conjunto de rutinas independientes, llamadas por los analizadores sintácticos. El análisis semántico utiliza como entrada el árbol sintáctico detectado por el análisis sintáctico para comprobar restricciones de tipos y otras limitaciones semánticas y preparar la generación de código.

Creamos un nuevo archivo llamado L.g4 con la siguiente gramática, y guardar en el directorio de antlrg4. Código de Antlr.g4

Ejecutamos del cmd del antlr.g4

Para verificar que nuestra gramática es correcta generamos nuestro árbol de sintaxis, ejecutamos los siguientes comandos probando la siguiente expresión (2 +3) * (4 +5)

1. NOTACIONE

PREFIJA (2+3) *(4+5)

Árbol de Sintaxis

 N. Infija: ((2+3)*(4+5)) La notación es la forma más común que utilizamos para describir matemáticas, estas notaciones se refiere a que el operador esta los operando.  N. Postfija: 23+45+* Se refieres a que el operador ocupa la posición de después de los operando sus características principales son: el orden de los paréntesis ya que no es una operación ambigua.

La operación posfija no es exactamente lo inverso a la operación prefija equivalente. 2. Notaciones (1+2) + (2+3) Árbol de sintaxis

 N.Infija: ((1+2)+ (2+3))

 N. Postfija: 1 2 + 2 3 + +

3. NOTACIONES 5 + (1*3) + 5 Árbol de sintaxis

 N.Infija: (5+(1*3)+5)  N. Postfija: 5 1 3 * + 5 +

4. NOTACIONES PREFIJA 6 +5 *(2-1) Árbol de sintaxis

 N. infija: (6+5*(2-1))  N. Postfija: 6 5 2 1 - * +

5. NOTACIONES PREFIJA (3 * 4) / 6-2 Árbol de sintaxis

 N. infija: ((3*4)/6-2)  N. postfijas: 3 4 * 6 / 2 -

6. NOTACIONES (1*-2) + (3*-1)

Árbol de sintaxis

 N.Infija: ((1*-2)+(3*-1))

 N. Postfija: 1 * 2 - 3 * 1 - +

7. Notaciones ((2*4*1)/ (1+2) – (1*2*3)) + 1 Árbol de sintaxis

 N. Infija: (((2*4*1)/(1+2)-(1*2*3))+1)  N. posfija: 2 4 * 1 * 1 2 + / 1 2 * 3 * - 1 +

8. Notaciones –(A +B+C) * (C + D) + (A * B – C) Árbol de sintaxis

 N. Infija: (-(A+B+C)*(C+D)+(A*B-C))

 N. Postfija: A B + C + C D + * - A B * C - +

9. Notaciones –(A +B+C) * (C + D) + (A + B – C) Árbol de Sintaxis

 N. Infija: (-(A+B+C)*(C+D)+(A+B-C))

 N. Postfija: A B + C + C D + * - A B + C - +

10. Notaciones (A + B) * C Árbol de sintaxis

 N. INFIJA: ((A+B)*C)

 N. Postfija: A B + C *

CONCLUSIONES Gracias esta asignatura de lenguajes y autómata II no dios conocer la importancia de código intermedio son una forma especial en la que se puede expresar una expresión matemática y puedan ser de 3 formas: infija, prefija y posfija. Los prefijos, pre –pos –In se refieren a la posición relativa del operador con respecto a los dos operando.