SlideShare una empresa de Scribd logo
1 de 12
ANÁLISIS SEMÁNTICO
 INTEGRANTES:
CASTILLO BOZA ALBHERT
QUEA OGOSI ZIV
TUMI CABRERA MIGUEL ANGEL
CALLAO 2016
GRAMATICA DE ATRIBUTOS PARA EL
ANALISIS SEMANTICA DE LOS LENGUAJES
DE PROGRAMACIÓN
 1.-Declaración de identificadores:
 El analizador morfológico debe proporcionar (como valor de su atributo),
el tipo de dato que se esa declarando.
 El identificador debe comprobarse en la tabla de símbolos que no se
haya declarado previamente la misma variable.
 2.-Expresiones aritméticas:
 El analizador semántico tiene que asegurar que se
satisfacen las restricciones de tipo de los
operandos que aparecen en las expresiones.
 Una de las dificultades para la generación de
código para calcular expresiones es la
determinación del lugar donde se almacenarán los
resultados intermedios. El sistema ofrece un
conjunto limitado de registros
 3-Asignación de valor a los identificadores:
 El analizador semántico tendrá que encargase de las siguientes tareas:
• El analizador morfológico propaga la información semántica del nombre del
identificador.
• Tras procesar el símbolo <identificador>, hay que consultar la tabla de
símbolos para comprobar que ya ha sido declarado y recuperar su información
semántica asociada, que incluye su tipo.
• Tras procesar el símbolo no terminal <expresión>, habrá que comprobar la
compatibilidad entre los tipos de la expresión y el identificador, para que la
asignación sea correcta.
 4.-Procedimientos:
 Las comprobaciones que debe realizar el analizador semántico son:
• El tipo y el identificador se tratan de manera análoga a la de la
declaración de variables, excepto que se tiene que indicar en la tabla de
símbolos que el identificador representa una función
• La declaración de la lista de argumentos implica actualizar la información
que se conserva al respecto, que tiene que ser accesible en el momento
de la invocación del procedimiento.
 El analizador semántico debe realizar las siguientes tareas:
• Tras procesar el símbolo <identificador>, cuyo nombre debe
propagarse, hay que comprobar en la tabla de símbolos que se ha
declarado un procedimiento con ese nombre, y recuperar la
información que describe la lista de sus argumentos.
• Tras procesar el paréntesis de cierre, se podrá completar la
verificación de la correspondencia del número, tipo y orden de los
argumentos de la invocación y los de la declaración.
Algunas herramientas para la generación de analizadores
semánticos
Un metacompilador es un compilador de compiladores. se trata de un
programa que acepta como entrada la descripción de un lenguaje
(gramática) y produce el compilador o intérprete de dicho lenguaje, no
existen metacompiladores completos, pero sí parciales que permiten
añadir código para completar el resto del compilador.
Ejemplos de metacompiladores son: LEX, YACC, FLEX, BISON, JAVACC,
JLEX, CUP, ETC.
Estructura del fichero fuente de yacc
• La sección de definiciones.
• La sección de reglas.
• La sección de código de usuario.
Sección de definiciones
Declaraciones propias de yacc
Se especifican aspectos generales, mediante el uso de directivas.
• Directiva %union
• Directiva %type
• Directiva %token
• Directiva %start
Sección de reglas
Existen tres formas para escribir los símbolos terminales en una gramática
definida por Bison, estas son:
Token designado, se define en esta sección como si se tratara de un
identificador
Token carácter, se escriben en la gramática directamente utilizando la sintaxis
de C para los caracteres
Token cadena, se define cono una cadena en C es decir entre comillas dobles,
ademas este tipo de tokens no funcionan en Yacc
Sección de reglas
Dentro de la acción semántica se escriben instrucciones en el lenguaje C.
En ellas, pueden aparecer los símbolos de la tabla 5., que tienen
significado especial para yacc, y que permiten acceder a la información
semántica de la gramática. Se supone, en la tabla, que se está
describiendo la regla X:Y1 Y2...Yn).
Sección de funciones de usuario
 yyparse: Esta función realiza el análisis sintáctico de los programas escritos
en el lenguaje que se especificó en la gramática.
 Yylex: Esta función se encarga de partir el programa ingresado en
unidades léxicas elementales (tokens) y se los entrega al yyparse para
que él determine la regla que le corresponde.

Más contenido relacionado

La actualidad más candente

Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico maryr_
 
Presentación 2014 profe gabriel
Presentación 2014 profe gabrielPresentación 2014 profe gabriel
Presentación 2014 profe gabrielEnrique Morales
 
Analizadores Sintácticos
Analizadores SintácticosAnalizadores Sintácticos
Analizadores SintácticosBryant Arellano
 
Analizador Sintactico
Analizador SintacticoAnalizador Sintactico
Analizador SintacticoBayo Chicaiza
 
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS Infomania pro
 
Analisis Lexico
Analisis LexicoAnalisis Lexico
Analisis LexicoFARIDROJAS
 
Corporacion universitaria remington compiladores deisy
Corporacion universitaria remington compiladores deisyCorporacion universitaria remington compiladores deisy
Corporacion universitaria remington compiladores deisyDeisy Nereida Lozada Ortiz
 
Automatas y compiladores analisis sintactico
Automatas y compiladores analisis sintacticoAutomatas y compiladores analisis sintactico
Automatas y compiladores analisis sintacticoGermania Rodriguez
 
Incorporacion De Una Tabla De Simbolos Compiladores
Incorporacion De Una Tabla De Simbolos CompiladoresIncorporacion De Una Tabla De Simbolos Compiladores
Incorporacion De Una Tabla De Simbolos Compiladoresguest5fa3fc
 
Analizador LÉxico
Analizador LÉxicoAnalizador LÉxico
Analizador LÉxicoFARIDROJAS
 
DiseñO De Compilador
DiseñO De CompiladorDiseñO De Compilador
DiseñO De CompiladorBigbossH
 
Estructuras de un programa
Estructuras de un programaEstructuras de un programa
Estructuras de un programaTensor
 
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguajeLenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguajeDunkherz
 

La actualidad más candente (20)

Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico
 
Presentación 2014 profe gabriel
Presentación 2014 profe gabrielPresentación 2014 profe gabriel
Presentación 2014 profe gabriel
 
Analizadores Sintácticos
Analizadores SintácticosAnalizadores Sintácticos
Analizadores Sintácticos
 
Analizador Sintactico
Analizador SintacticoAnalizador Sintactico
Analizador Sintactico
 
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
 
Compiladores, Analisis Lexico Conceptos
Compiladores, Analisis Lexico ConceptosCompiladores, Analisis Lexico Conceptos
Compiladores, Analisis Lexico Conceptos
 
TABLA DE SÍMBOLOS
TABLA DE SÍMBOLOSTABLA DE SÍMBOLOS
TABLA DE SÍMBOLOS
 
Analisis Lexico
Analisis LexicoAnalisis Lexico
Analisis Lexico
 
Corporacion universitaria remington compiladores deisy
Corporacion universitaria remington compiladores deisyCorporacion universitaria remington compiladores deisy
Corporacion universitaria remington compiladores deisy
 
Automatas y compiladores analisis sintactico
Automatas y compiladores analisis sintacticoAutomatas y compiladores analisis sintactico
Automatas y compiladores analisis sintactico
 
Sintaxis del lenguaje c++
Sintaxis del lenguaje c++Sintaxis del lenguaje c++
Sintaxis del lenguaje c++
 
Analizador léxico
Analizador léxicoAnalizador léxico
Analizador léxico
 
Incorporacion De Una Tabla De Simbolos Compiladores
Incorporacion De Una Tabla De Simbolos CompiladoresIncorporacion De Una Tabla De Simbolos Compiladores
Incorporacion De Una Tabla De Simbolos Compiladores
 
Analizador LÉxico
Analizador LÉxicoAnalizador LÉxico
Analizador LÉxico
 
DiseñO De Compilador
DiseñO De CompiladorDiseñO De Compilador
DiseñO De Compilador
 
Compiladores, Analisis Lexico
Compiladores, Analisis LexicoCompiladores, Analisis Lexico
Compiladores, Analisis Lexico
 
Estructuras de un programa
Estructuras de un programaEstructuras de un programa
Estructuras de un programa
 
ESTRUCTURA DE UN PROGRAMA
ESTRUCTURA DE UN PROGRAMA ESTRUCTURA DE UN PROGRAMA
ESTRUCTURA DE UN PROGRAMA
 
Analizador lexico
Analizador lexicoAnalizador lexico
Analizador lexico
 
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguajeLenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
 

Destacado

Etapas en el embarazo
Etapas en el embarazoEtapas en el embarazo
Etapas en el embarazobebitabella
 
Erp systems via sap
Erp systems via sapErp systems via sap
Erp systems via sapViplav Jain
 
Usis Enrollment Instructions
Usis Enrollment InstructionsUsis Enrollment Instructions
Usis Enrollment InstructionsMsamiluysal
 
Factors Affecting Work Productivity among the Female Faculty of Allied Medica...
Factors Affecting Work Productivity among the Female Faculty of Allied Medica...Factors Affecting Work Productivity among the Female Faculty of Allied Medica...
Factors Affecting Work Productivity among the Female Faculty of Allied Medica...iosrjce
 
Qamar chohan ppt
Qamar chohan pptQamar chohan ppt
Qamar chohan pptQamar Iqbal
 
Imitation Game
Imitation GameImitation Game
Imitation Gamewill sh
 

Destacado (8)

Lauraaa
LauraaaLauraaa
Lauraaa
 
Etapas en el embarazo
Etapas en el embarazoEtapas en el embarazo
Etapas en el embarazo
 
Erp systems via sap
Erp systems via sapErp systems via sap
Erp systems via sap
 
Usis Enrollment Instructions
Usis Enrollment InstructionsUsis Enrollment Instructions
Usis Enrollment Instructions
 
Marketing management
Marketing management Marketing management
Marketing management
 
Factors Affecting Work Productivity among the Female Faculty of Allied Medica...
Factors Affecting Work Productivity among the Female Faculty of Allied Medica...Factors Affecting Work Productivity among the Female Faculty of Allied Medica...
Factors Affecting Work Productivity among the Female Faculty of Allied Medica...
 
Qamar chohan ppt
Qamar chohan pptQamar chohan ppt
Qamar chohan ppt
 
Imitation Game
Imitation GameImitation Game
Imitation Game
 

Similar a Gramatica de atributos para el analisis semantica

Tabladesmbolos 101103230525-phpapp02
Tabladesmbolos 101103230525-phpapp02Tabladesmbolos 101103230525-phpapp02
Tabladesmbolos 101103230525-phpapp02Javier Alva
 
Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_Jennybeatriz1
 
Actividad 2 programacion de sistemas
Actividad 2 programacion de sistemasActividad 2 programacion de sistemas
Actividad 2 programacion de sistemasJESSIKADG86
 
Compiladores
CompiladoresCompiladores
CompiladoresIsabel
 
Estructura de un compilador 2
Estructura de un compilador 2Estructura de un compilador 2
Estructura de un compilador 2perlallamas
 
Taller compiladores Análisis Semántico
Taller compiladores Análisis Semántico Taller compiladores Análisis Semántico
Taller compiladores Análisis Semántico Alex Toapanta
 
Manual de Compiladores Léxico y Sintáctico.pdf
Manual de Compiladores Léxico y Sintáctico.pdfManual de Compiladores Léxico y Sintáctico.pdf
Manual de Compiladores Léxico y Sintáctico.pdfDavidErnestoT
 
Unidad 3 ensambladores
Unidad 3 ensambladoresUnidad 3 ensambladores
Unidad 3 ensambladoresGustavo Davila
 
TALLER ANÁLISIS SINTÁCTICO
TALLER ANÁLISIS SINTÁCTICOTALLER ANÁLISIS SINTÁCTICO
TALLER ANÁLISIS SINTÁCTICOJOSSELINEMARIBEL
 
Escuela Superior Politécnica de Chimborazo
Escuela Superior Politécnica de ChimborazoEscuela Superior Politécnica de Chimborazo
Escuela Superior Politécnica de ChimborazoBryan Joel Haro Ayerve
 
Analisis sintactico actividad 15
Analisis sintactico actividad 15Analisis sintactico actividad 15
Analisis sintactico actividad 15AndresDvila
 
Analisis Semantico Taller 1 Parcial 2
Analisis Semantico Taller 1 Parcial 2Analisis Semantico Taller 1 Parcial 2
Analisis Semantico Taller 1 Parcial 2GLORIABELEN3
 
Taller de actividades de compiladores 06 06 2019
Taller de actividades de compiladores 06 06 2019Taller de actividades de compiladores 06 06 2019
Taller de actividades de compiladores 06 06 2019DanielRosero23
 

Similar a Gramatica de atributos para el analisis semantica (20)

Tabladesmbolos 101103230525-phpapp02
Tabladesmbolos 101103230525-phpapp02Tabladesmbolos 101103230525-phpapp02
Tabladesmbolos 101103230525-phpapp02
 
Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_
 
Actividad 2 programacion de sistemas
Actividad 2 programacion de sistemasActividad 2 programacion de sistemas
Actividad 2 programacion de sistemas
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Estructura de un compilador 2
Estructura de un compilador 2Estructura de un compilador 2
Estructura de un compilador 2
 
Taller compiladores Análisis Semántico
Taller compiladores Análisis Semántico Taller compiladores Análisis Semántico
Taller compiladores Análisis Semántico
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Manual de Compiladores Léxico y Sintáctico.pdf
Manual de Compiladores Léxico y Sintáctico.pdfManual de Compiladores Léxico y Sintáctico.pdf
Manual de Compiladores Léxico y Sintáctico.pdf
 
Compilador2
Compilador2Compilador2
Compilador2
 
Unidad 3 ensambladores
Unidad 3 ensambladoresUnidad 3 ensambladores
Unidad 3 ensambladores
 
Guia en lenguaje c
Guia en lenguaje c Guia en lenguaje c
Guia en lenguaje c
 
TALLER ANÁLISIS SINTÁCTICO
TALLER ANÁLISIS SINTÁCTICOTALLER ANÁLISIS SINTÁCTICO
TALLER ANÁLISIS SINTÁCTICO
 
Escuela Superior Politécnica de Chimborazo
Escuela Superior Politécnica de ChimborazoEscuela Superior Politécnica de Chimborazo
Escuela Superior Politécnica de Chimborazo
 
Analisis sintactico actividad 15
Analisis sintactico actividad 15Analisis sintactico actividad 15
Analisis sintactico actividad 15
 
investigacion.pdf
investigacion.pdfinvestigacion.pdf
investigacion.pdf
 
Compiladores conceptos
Compiladores conceptosCompiladores conceptos
Compiladores conceptos
 
Analisis Semantico Taller 1 Parcial 2
Analisis Semantico Taller 1 Parcial 2Analisis Semantico Taller 1 Parcial 2
Analisis Semantico Taller 1 Parcial 2
 
Progamacion
ProgamacionProgamacion
Progamacion
 
Taller de actividades de compiladores 06 06 2019
Taller de actividades de compiladores 06 06 2019Taller de actividades de compiladores 06 06 2019
Taller de actividades de compiladores 06 06 2019
 
investigacion 4.4 y 4.5.pdf
investigacion 4.4 y 4.5.pdfinvestigacion 4.4 y 4.5.pdf
investigacion 4.4 y 4.5.pdf
 

Último

CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALKATHIAMILAGRITOSSANC
 
Controladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y VentajasControladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y Ventajasjuanprv
 
hitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxhitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxMarcelaArancibiaRojo
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdfFernandaGarca788912
 
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxPPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxSergioGJimenezMorean
 
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.pptoscarvielma45
 
tema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdftema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdfvictoralejandroayala2
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfedsonzav8
 
desarrollodeproyectoss inge. industrial
desarrollodeproyectoss  inge. industrialdesarrollodeproyectoss  inge. industrial
desarrollodeproyectoss inge. industrialGibranDiaz7
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfmatepura
 
Principales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards DemingPrincipales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards DemingKevinCabrera96
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfAntonioGonzalezIzqui
 
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023RonaldoPaucarMontes
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdfevin1703e
 
UNIDAD 3 ELECTRODOS.pptx para biopotenciales
UNIDAD 3 ELECTRODOS.pptx para biopotencialesUNIDAD 3 ELECTRODOS.pptx para biopotenciales
UNIDAD 3 ELECTRODOS.pptx para biopotencialesElianaCceresTorrico
 
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxProcesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxJuanPablo452634
 
Clase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptxClase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptxChristopherOlave2
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptMarianoSanchez70
 
nom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfnom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfDiegoMadrigal21
 
PPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfPPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfalexquispenieto2
 

Último (20)

CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
 
Controladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y VentajasControladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y Ventajas
 
hitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxhitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docx
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdf
 
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxPPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
 
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
 
tema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdftema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdf
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdf
 
desarrollodeproyectoss inge. industrial
desarrollodeproyectoss  inge. industrialdesarrollodeproyectoss  inge. industrial
desarrollodeproyectoss inge. industrial
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdf
 
Principales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards DemingPrincipales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards Deming
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
 
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdf
 
UNIDAD 3 ELECTRODOS.pptx para biopotenciales
UNIDAD 3 ELECTRODOS.pptx para biopotencialesUNIDAD 3 ELECTRODOS.pptx para biopotenciales
UNIDAD 3 ELECTRODOS.pptx para biopotenciales
 
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxProcesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
 
Clase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptxClase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptx
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
 
nom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfnom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdf
 
PPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfPPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdf
 

Gramatica de atributos para el analisis semantica

  • 1. ANÁLISIS SEMÁNTICO  INTEGRANTES: CASTILLO BOZA ALBHERT QUEA OGOSI ZIV TUMI CABRERA MIGUEL ANGEL CALLAO 2016
  • 2. GRAMATICA DE ATRIBUTOS PARA EL ANALISIS SEMANTICA DE LOS LENGUAJES DE PROGRAMACIÓN  1.-Declaración de identificadores:  El analizador morfológico debe proporcionar (como valor de su atributo), el tipo de dato que se esa declarando.  El identificador debe comprobarse en la tabla de símbolos que no se haya declarado previamente la misma variable.
  • 3.  2.-Expresiones aritméticas:  El analizador semántico tiene que asegurar que se satisfacen las restricciones de tipo de los operandos que aparecen en las expresiones.  Una de las dificultades para la generación de código para calcular expresiones es la determinación del lugar donde se almacenarán los resultados intermedios. El sistema ofrece un conjunto limitado de registros
  • 4.  3-Asignación de valor a los identificadores:  El analizador semántico tendrá que encargase de las siguientes tareas: • El analizador morfológico propaga la información semántica del nombre del identificador. • Tras procesar el símbolo <identificador>, hay que consultar la tabla de símbolos para comprobar que ya ha sido declarado y recuperar su información semántica asociada, que incluye su tipo. • Tras procesar el símbolo no terminal <expresión>, habrá que comprobar la compatibilidad entre los tipos de la expresión y el identificador, para que la asignación sea correcta.
  • 5.  4.-Procedimientos:  Las comprobaciones que debe realizar el analizador semántico son: • El tipo y el identificador se tratan de manera análoga a la de la declaración de variables, excepto que se tiene que indicar en la tabla de símbolos que el identificador representa una función • La declaración de la lista de argumentos implica actualizar la información que se conserva al respecto, que tiene que ser accesible en el momento de la invocación del procedimiento.
  • 6.  El analizador semántico debe realizar las siguientes tareas: • Tras procesar el símbolo <identificador>, cuyo nombre debe propagarse, hay que comprobar en la tabla de símbolos que se ha declarado un procedimiento con ese nombre, y recuperar la información que describe la lista de sus argumentos. • Tras procesar el paréntesis de cierre, se podrá completar la verificación de la correspondencia del número, tipo y orden de los argumentos de la invocación y los de la declaración.
  • 7. Algunas herramientas para la generación de analizadores semánticos Un metacompilador es un compilador de compiladores. se trata de un programa que acepta como entrada la descripción de un lenguaje (gramática) y produce el compilador o intérprete de dicho lenguaje, no existen metacompiladores completos, pero sí parciales que permiten añadir código para completar el resto del compilador. Ejemplos de metacompiladores son: LEX, YACC, FLEX, BISON, JAVACC, JLEX, CUP, ETC.
  • 8. Estructura del fichero fuente de yacc • La sección de definiciones. • La sección de reglas. • La sección de código de usuario.
  • 9. Sección de definiciones Declaraciones propias de yacc Se especifican aspectos generales, mediante el uso de directivas. • Directiva %union • Directiva %type • Directiva %token • Directiva %start
  • 10. Sección de reglas Existen tres formas para escribir los símbolos terminales en una gramática definida por Bison, estas son: Token designado, se define en esta sección como si se tratara de un identificador Token carácter, se escriben en la gramática directamente utilizando la sintaxis de C para los caracteres Token cadena, se define cono una cadena en C es decir entre comillas dobles, ademas este tipo de tokens no funcionan en Yacc
  • 11. Sección de reglas Dentro de la acción semántica se escriben instrucciones en el lenguaje C. En ellas, pueden aparecer los símbolos de la tabla 5., que tienen significado especial para yacc, y que permiten acceder a la información semántica de la gramática. Se supone, en la tabla, que se está describiendo la regla X:Y1 Y2...Yn).
  • 12. Sección de funciones de usuario  yyparse: Esta función realiza el análisis sintáctico de los programas escritos en el lenguaje que se especificó en la gramática.  Yylex: Esta función se encarga de partir el programa ingresado en unidades léxicas elementales (tokens) y se los entrega al yyparse para que él determine la regla que le corresponde.