La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

1 Sebastián Argüello A60490 semana 3 Autómatas y compiladores CI-1322.

Presentaciones similares


Presentación del tema: "1 Sebastián Argüello A60490 semana 3 Autómatas y compiladores CI-1322."— Transcripción de la presentación:

1 1 Sebastián Argüello A60490 semana 3 Autómatas y compiladores CI-1322

2 El código fuente es divido en secciones y se genera una representación interna del mismo. El código fuente es divido en secciones y se genera una representación interna del mismo. La gramática libre de contexto representa la forma en que se debe escribir un lenguaje (su sintaxis ) La gramática libre de contexto representa la forma en que se debe escribir un lenguaje (su sintaxis ) La semántica describe que lo que el programa realizara al ser ejecutado. La semántica describe que lo que el programa realizara al ser ejecutado. 2 Análisis

3 Componentes: Componentes: Terminales: símbolos elementales definidos en la gramática. Terminales: símbolos elementales definidos en la gramática. No terminales o variables sintácticas: se pueden representar a través de otros no terminales o por conjuntos de hileras de terminales. No terminales o variables sintácticas: se pueden representar a través de otros no terminales o por conjuntos de hileras de terminales. Producciones: poseen un no terminal, un divisor (una flecha) y una secuencia de terminales o no terminales. Producciones: poseen un no terminal, un divisor (una flecha) y una secuencia de terminales o no terminales. Se designan algunos los símbolos no terminales como símbolo de inicio. Se designan algunos los símbolos no terminales como símbolo de inicio. 3 Gramática

4 Muestra los símbolos iníciales de las derivaciones de las gramáticas. Muestra los símbolos iníciales de las derivaciones de las gramáticas. Propiedades: Propiedades: La raíz tiene como hijos los símbolos de inicio de cada una de sus producciones. La raíz tiene como hijos los símbolos de inicio de cada una de sus producciones. Cada hoja es un terminal o є. Cada hoja es un terminal o є. Los nodos internos son no terminales Los nodos internos son no terminales Si un nodo es no terminal, existe una producción para este hacia sus hijos. Si un nodo es no terminal, existe una producción para este hacia sus hijos. 4 Árbol semántico

5 El código intermedio se puede representar a través de: Un árbol de sintaxis (representa, jerárquicamente, la estructura sintáctica del código fuente). Un árbol de sintaxis (representa, jerárquicamente, la estructura sintáctica del código fuente). Una secuencia de instrucciones de tres direcciones. Una secuencia de instrucciones de tres direcciones. 5 Do-while body > Assign [] v i+ai i 1 1: i = i +1 2: t1 = a [ i ] 3: if t1 < v goto 1

6 Consiste en reemplazar repetidamente un no terminal por el cuerpo de su respectiva producción hasta obtener una hilera conformada por terminales. Consiste en reemplazar repetidamente un no terminal por el cuerpo de su respectiva producción hasta obtener una hilera conformada por terminales. La gramática debe de estar bien definida para evitar ambigüedad, el código fuente debe de interpretarse de una única forma. La gramática debe de estar bien definida para evitar ambigüedad, el código fuente debe de interpretarse de una única forma. 6 Derivaciones

7 Consiste en verificar que el código fuente conocida con la gramática especificada para un determinado lenguaje de programación. Consiste en verificar que el código fuente conocida con la gramática especificada para un determinado lenguaje de programación. Si una hilera o sección determinada del código fuente no se puede derivar, a partir del símbolo de inicio de una producción, se reporta el error de sintaxis de esta. Si una hilera o sección determinada del código fuente no se puede derivar, a partir del símbolo de inicio de una producción, se reporta el error de sintaxis de esta. 7 Parsing o análisis semántico

8  Las reglas semánticas sirven para procesar los valores de los atributos asociados con los símbolos que aparecen en la producción.  El valor de un nodo del árbol de análisis sintáctico se define a partir del valor de sus hijos y del valor propio del nodo. 8 Atributos sintetizados

9 Un esquema de traducción sintáctica dirigirá se produce agregando fragmentos de programa (acciones semánticas) a la producción de la gramática. Un esquema de traducción sintáctica dirigirá se produce agregando fragmentos de programa (acciones semánticas) a la producción de la gramática. A la hora de construir un árbol semántico se utilizan símbolos de referencias, que es el primero y se busca que sea este solo aparezca una única vez como cabeza de una producción. A la hora de construir un árbol semántico se utilizan símbolos de referencias, que es el primero y se busca que sea este solo aparezca una única vez como cabeza de una producción. Se realizan cotejos entre el código fuente y el cuerpo de la producción determinada. Se realizan cotejos entre el código fuente y el cuerpo de la producción determinada. 9


Descargar ppt "1 Sebastián Argüello A60490 semana 3 Autómatas y compiladores CI-1322."

Presentaciones similares


Anuncios Google