SlideShare ist ein Scribd-Unternehmen logo
1 von 4
Downloaden Sie, um offline zu lesen
Clase # 6 – Conceptos del Análisis Léxico
Por: Ing. Marvin Parada, Compiladores Ciclo I-2016 Página 1
UNIVERSIDAD “GERARDO BARRIOS”
COMPILADORES E INTÉRPRETES, CICLO I – 2016
DOCENTE: ING. MARVIN OSMARO PARADA
CLASE # 6
CONCEPTOS GENERALES SOBRE ANALISIS LEXICO
OBJETIVO
Definición de conceptos generales sobre la unidad II, Análisis Léxico.
1. Token
2. Patrón
3. Lexema
4. Atributo
5. Gramática
6. Alfabeto
7. Símbolo
8. Expresión Regular
9. Diagrama y Tabla de Transición
10. Autómata
11. Autómata Finito
12. Autómata Finito Determinista
13. Autómata Finito No Determinista
14. Autómata de Pila
15. Autómata de Turing
¿QUÉ ENTENDEMOS POR LEXICO?
El léxico de un lenguaje natural está constituido por todas las palabras y símbolos que lo
componen. Para un lenguaje de programación la definición también es válida.
En un lenguaje de programación el léxico lo constituyen todos los elementos individuales del
lenguaje, denominados frecuentemente en inglés tokens. Así son tokens: las palabras reservadas
del lenguaje, los símbolos que denotan los distintos tipos de operadores, identificadores (de
variables, de funciones, de procedimientos, de tipos, etc.), separadores de sentencias y otros.
¿QUÉ ENTENDEMOS POR SINTAXIS?
En lingüística, sintaxis es el estudio de la función que desempeña cada palabra en el entorno de
una frase. Mientras que semántica es el estudio del significado de una palabra tanto a nivel
individual como en el contexto de una frase.
En los lenguajes de programación, sintaxis es un conjunto de reglas formales que especifican la
composición de los programas a base de letras, dígitos y otros caracteres. Por ejemplo, las reglas
de sintaxis especifican en C/C++ que cada sentencia o línea de programa debe terminar con un
Clase # 6 – Conceptos del Análisis Léxico
Por: Ing. Marvin Parada, Compiladores Ciclo I-2016 Página 2
“;”, o que la declaración de tipos debe ir antes que la de variables. (int var;)
¿QUÉ ENTENDEMOS POR SEMANTICA?
Semántica en los lenguajes de programación es el conjunto de reglas que especifican el
significado de cualquier sentencia, sintácticamente correcta y escrita en un determinado lenguaje.
Por ejemplo en el lenguaje Pascal la sentencia: suma:= 27/lado Es sintácticamente correcta, ya
que a la izquierda del símbolo de asignación hay un identificador, y a la derecha una expresión.
Pero para que sea semánticamente correcta hay que comprobar:
a) Lado debe ser compatible con el operador “/” y con el operando 27.
b) Suma debe ser un tipo compatible con el resultado de la operación.
El ANALIZADOR LEXICO
Un programa fuente es una serie de símbolos (letras, símbolos, caracteres especiales: +, *, !). Con
estos símbolos se representan las construcciones del lenguaje tales como variables, etiquetas,
palabras reservadas, constantes, etc. Es necesario que el compilador o traductor identifique los
distintos significados de estas construcciones, que los creadores de lenguajes dan en la definición
del lenguaje.
El programa fuente se trata inicialmente con el analizador léxico (en inglés scanner), con el
propósito de agrupar el texto en grupos de caracteres con significado propio llamados tokens o
componentes léxicos, tales como variables, identificadores, palabras reservadas y operadores. Por
razones de eficiencia a cada token se le asocia un atributo (o más de uno) que se representa
internamente por un código numérico o por un tipo enumerado.
Por ejemplo considerar la siguiente sentencia es C/C++:
if sueldo == 1000 sueldo * 0.25;
El analizador léxico la separa en la siguiente secuencia de tokens:
Clase # 6 – Conceptos del Análisis Léxico
Por: Ing. Marvin Parada, Compiladores Ciclo I-2016 Página 3
En general, el análisis léxico es un análisis a nivel de caracteres, su misión es reconocer los
componentes léxicos o tokens, enviando al analizador sintáctico (en la siguiente etapa) los
tokens y sus atributos.
CONCEPTOS ANALIZADOR LEXICO
Token
Es el nombre que se le da a cada patrón definido, éste nombre debe usarse en todos los
procesos del análisis en todos los lexemas encontrados.
Patrón
Es una representación lógica de una serie de agrupaciones de caracteres con características
comunes.
Lexema
Es cada una de las combinaciones de caracteres que encajan en la definición de un patrón o
token. Ej. Variable1, x, a, edad, y2, etc.
Atributo
Características propias de cada token, por tanto se les denomina atributos del token.
Gramática
Se define como un ente formal para especificar de una manera finita el conjunto de cadenas de
símbolos que constituyen un lenguaje.
Alfabeto
Conjunto finito de símbolos no vacío que conforman una gramática, se representan por ∑
(sigma).
Clase # 6 – Conceptos del Análisis Léxico
Por: Ing. Marvin Parada, Compiladores Ciclo I-2016 Página 4
Símbolo
Entidad abstracta que no se va a definir pues se deja como axioma. Normalmente son letras de
alfabetos, números o caracteres especiales como +, -, *, /, etc. No necesariamente serán uno
solo, ya que un símbolo puede ser una combinación como palabras reservadas de un lenguaje
de programación then, end, beging, else, while, etc.
Expresión Regular
Representan patrones de cadenas de caracteres. Se conocen más como metalenguajes que
sirven para describir los lenguajes regulares.
Diagrama de Transición
Es el conjunto de secuencias de entrada que representan gráficamente los símbolos validos por
la gramática, es una representación de los universales autómatas que aparecen en la
matemática y otras ciencias.
Tabla de Transiciones
Es la manera más cercana de representar los autómatas, consta de filas que representan los
estados y las columnas que representan los símbolos de entrada. Adicionalmente se agregan
dos columnas para representar los tokens y para indicar retrocesos.
Cadena
Se define como una secuencia de símbolos de un lenguaje determinado. Por ejemplo 0001,
abcd, a+4*b, 11000, etc. Una cadena siempre tiene una longitud que esta denotada por la
cantidad de símbolos independientes que la conforman.
|abcde| →5
|000111| →6
Cuando la cadena es vacía se representa como |λ|→0.
Lenguaje
Un lenguaje es un conjunto de palabras que se puede representar con un determinado alfabeto.
Autómata
Es una construcción lógica que recibe como entrada una cadena de símbolos y produce una
salida indicando si la salida es una cadena que pertenece a un determinado lenguaje.

Weitere ähnliche Inhalte

Was ist angesagt?

Analizador léxico
Analizador léxico Analizador léxico
Analizador léxico Jorge Molano
 
Analisis semantico
Analisis semanticoAnalisis semantico
Analisis semanticoAreli Gómez
 
Analizador sintactico
Analizador sintacticoAnalizador sintactico
Analizador sintacticoalexisdario
 
Análisis Semántico con Cup
Análisis Semántico con CupAnálisis Semántico con Cup
Análisis Semántico con CupLAUNASA NOVENO B
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador SintácticoPablo Guerra
 
Análisis léxico y análisis sintáctico
Análisis léxico y análisis sintácticoAnálisis léxico y análisis sintáctico
Análisis léxico y análisis sintácticoangiepao1717
 
Automatas y compiladores analisis sintactico
Automatas y compiladores analisis sintacticoAutomatas y compiladores analisis sintactico
Automatas y compiladores analisis sintacticoGermania Rodriguez
 
Ejercicio compiladores
Ejercicio compiladoresEjercicio compiladores
Ejercicio compiladoresSheyli Patiño
 
Actividad 3
Actividad 3Actividad 3
Actividad 3maryr_
 
Analisis Lexico
Analisis LexicoAnalisis Lexico
Analisis LexicoFARIDROJAS
 
Compiladores analizadores gramática y algo mas
Compiladores analizadores gramática y algo masCompiladores analizadores gramática y algo mas
Compiladores analizadores gramática y algo mascesarkt
 
Analizador Sintactico
Analizador SintacticoAnalizador Sintactico
Analizador SintacticoBayo Chicaiza
 
Analizador LÉxico
Analizador LÉxicoAnalizador LÉxico
Analizador LÉxicoFARIDROJAS
 
Test1 de Compiladores
Test1 de CompiladoresTest1 de Compiladores
Test1 de CompiladoresInfomania pro
 

Was ist angesagt? (20)

Analizador léxico
Analizador léxico Analizador léxico
Analizador léxico
 
Analisis semantico
Analisis semanticoAnalisis semantico
Analisis semantico
 
Compiladores, Analisis Lexico, Ejemplo Minilenguaje
Compiladores, Analisis Lexico, Ejemplo MinilenguajeCompiladores, Analisis Lexico, Ejemplo Minilenguaje
Compiladores, Analisis Lexico, Ejemplo Minilenguaje
 
Analizador sintactico
Analizador sintacticoAnalizador sintactico
Analizador sintactico
 
Análisis Semántico con Cup
Análisis Semántico con CupAnálisis Semántico con Cup
Análisis Semántico con Cup
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador Sintáctico
 
Análisis lexicográfico
Análisis lexicográficoAnálisis lexicográfico
Análisis lexicográfico
 
Análisis léxico y análisis sintáctico
Análisis léxico y análisis sintácticoAnálisis léxico y análisis sintáctico
Análisis léxico y análisis sintáctico
 
Automatas y compiladores analisis sintactico
Automatas y compiladores analisis sintacticoAutomatas y compiladores analisis sintactico
Automatas y compiladores analisis sintactico
 
Ejercicio compiladores
Ejercicio compiladoresEjercicio compiladores
Ejercicio compiladores
 
Actividad 3
Actividad 3Actividad 3
Actividad 3
 
Analisis Lexico
Analisis LexicoAnalisis Lexico
Analisis Lexico
 
Claselexico
ClaselexicoClaselexico
Claselexico
 
Analizador léxico
Analizador léxicoAnalizador léxico
Analizador léxico
 
Compiladores analizadores gramática y algo mas
Compiladores analizadores gramática y algo masCompiladores analizadores gramática y algo mas
Compiladores analizadores gramática y algo mas
 
Analizador Sintactico
Analizador SintacticoAnalizador Sintactico
Analizador Sintactico
 
Analizador léxico
Analizador léxicoAnalizador léxico
Analizador léxico
 
Clase15
Clase15Clase15
Clase15
 
Analizador LÉxico
Analizador LÉxicoAnalizador LÉxico
Analizador LÉxico
 
Test1 de Compiladores
Test1 de CompiladoresTest1 de Compiladores
Test1 de Compiladores
 

Ähnlich wie Clase6 conceptos del analisis lexico

Ähnlich wie Clase6 conceptos del analisis lexico (20)

Compilador2
Compilador2Compilador2
Compilador2
 
Unidad4 analisis-semantico
Unidad4 analisis-semanticoUnidad4 analisis-semantico
Unidad4 analisis-semantico
 
Analizador Léxico, Analizador Sintáctico
Analizador Léxico, Analizador SintácticoAnalizador Léxico, Analizador Sintáctico
Analizador Léxico, Analizador Sintáctico
 
investigacion.pdf
investigacion.pdfinvestigacion.pdf
investigacion.pdf
 
1expo yeisland12
1expo yeisland121expo yeisland12
1expo yeisland12
 
Clase3 - Identificadores y directivas en Delphi
Clase3 - Identificadores y directivas en DelphiClase3 - Identificadores y directivas en Delphi
Clase3 - Identificadores y directivas en Delphi
 
Apuntes compiladores
Apuntes compiladoresApuntes compiladores
Apuntes compiladores
 
Analizador lexico
Analizador lexicoAnalizador lexico
Analizador lexico
 
Analizador léxico
Analizador léxicoAnalizador léxico
Analizador léxico
 
Análisis Sintáctico
Análisis SintácticoAnálisis Sintáctico
Análisis Sintáctico
 
Analisis lexico automatas i
Analisis lexico automatas iAnalisis lexico automatas i
Analisis lexico automatas i
 
Gramaticas
GramaticasGramaticas
Gramaticas
 
Lizbeth...
Lizbeth...Lizbeth...
Lizbeth...
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Compiladores1
Compiladores1Compiladores1
Compiladores1
 
Analisis sintactico actividad 15
Analisis sintactico actividad 15Analisis sintactico actividad 15
Analisis sintactico actividad 15
 
Lexicos.docx
Lexicos.docxLexicos.docx
Lexicos.docx
 
lenguajes formales
lenguajes formaleslenguajes formales
lenguajes formales
 
Compilador Exp
Compilador ExpCompilador Exp
Compilador Exp
 
Analisis lexico
Analisis lexicoAnalisis lexico
Analisis lexico
 

Mehr von Infomania pro

Clase10 ejemplos asm con tasm y tlink
Clase10 ejemplos asm con tasm y tlinkClase10 ejemplos asm con tasm y tlink
Clase10 ejemplos asm con tasm y tlinkInfomania pro
 
Clase10 2-lenguaje ensamblador
Clase10 2-lenguaje ensambladorClase10 2-lenguaje ensamblador
Clase10 2-lenguaje ensambladorInfomania pro
 
Compiladores clase02
Compiladores clase02Compiladores clase02
Compiladores clase02Infomania pro
 
Clase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptosClase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptosInfomania pro
 
Mapa mental y esquemas
Mapa mental y esquemasMapa mental y esquemas
Mapa mental y esquemasInfomania pro
 
Clase2 introduccion-compiladores-interpretes
Clase2 introduccion-compiladores-interpretesClase2 introduccion-compiladores-interpretes
Clase2 introduccion-compiladores-interpretesInfomania pro
 
Clase2 clasificacion de interpretes
Clase2 clasificacion de interpretesClase2 clasificacion de interpretes
Clase2 clasificacion de interpretesInfomania pro
 
Compilador: DEFINICIÓN
Compilador: DEFINICIÓNCompilador: DEFINICIÓN
Compilador: DEFINICIÓNInfomania pro
 

Mehr von Infomania pro (12)

Clase10 ejemplos asm con tasm y tlink
Clase10 ejemplos asm con tasm y tlinkClase10 ejemplos asm con tasm y tlink
Clase10 ejemplos asm con tasm y tlink
 
Manual80x86
Manual80x86Manual80x86
Manual80x86
 
Clase10 2-lenguaje ensamblador
Clase10 2-lenguaje ensambladorClase10 2-lenguaje ensamblador
Clase10 2-lenguaje ensamblador
 
Clase09 guia1-as
Clase09 guia1-asClase09 guia1-as
Clase09 guia1-as
 
Compiladores clase02
Compiladores clase02Compiladores clase02
Compiladores clase02
 
Tabla simbolos
Tabla simbolosTabla simbolos
Tabla simbolos
 
TABLA DE SÍMBOLOS
TABLA DE SÍMBOLOSTABLA DE SÍMBOLOS
TABLA DE SÍMBOLOS
 
Clase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptosClase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptos
 
Mapa mental y esquemas
Mapa mental y esquemasMapa mental y esquemas
Mapa mental y esquemas
 
Clase2 introduccion-compiladores-interpretes
Clase2 introduccion-compiladores-interpretesClase2 introduccion-compiladores-interpretes
Clase2 introduccion-compiladores-interpretes
 
Clase2 clasificacion de interpretes
Clase2 clasificacion de interpretesClase2 clasificacion de interpretes
Clase2 clasificacion de interpretes
 
Compilador: DEFINICIÓN
Compilador: DEFINICIÓNCompilador: DEFINICIÓN
Compilador: DEFINICIÓN
 

Kürzlich hochgeladen

ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...JAVIER SOLIS NOYOLA
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaDecaunlz
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dstEphaniiie
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA IIAFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA IIIsauraImbrondone
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICAÁngel Encinas
 
actividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° gradoactividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° gradoJosDanielEstradaHern
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAEl Fortí
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfenelcielosiempre
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxlclcarmen
 
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática4    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática4    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Estrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptxEstrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptxdkmeza
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Alejandrino Halire Ccahuana
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfMaritzaRetamozoVera
 

Kürzlich hochgeladen (20)

ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativa
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA IIAFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
actividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° gradoactividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° grado
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdf
 
Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática4    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática4    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
Estrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptxEstrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptx
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
 
Sesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronósticoSesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronóstico
 

Clase6 conceptos del analisis lexico

  • 1. Clase # 6 – Conceptos del Análisis Léxico Por: Ing. Marvin Parada, Compiladores Ciclo I-2016 Página 1 UNIVERSIDAD “GERARDO BARRIOS” COMPILADORES E INTÉRPRETES, CICLO I – 2016 DOCENTE: ING. MARVIN OSMARO PARADA CLASE # 6 CONCEPTOS GENERALES SOBRE ANALISIS LEXICO OBJETIVO Definición de conceptos generales sobre la unidad II, Análisis Léxico. 1. Token 2. Patrón 3. Lexema 4. Atributo 5. Gramática 6. Alfabeto 7. Símbolo 8. Expresión Regular 9. Diagrama y Tabla de Transición 10. Autómata 11. Autómata Finito 12. Autómata Finito Determinista 13. Autómata Finito No Determinista 14. Autómata de Pila 15. Autómata de Turing ¿QUÉ ENTENDEMOS POR LEXICO? El léxico de un lenguaje natural está constituido por todas las palabras y símbolos que lo componen. Para un lenguaje de programación la definición también es válida. En un lenguaje de programación el léxico lo constituyen todos los elementos individuales del lenguaje, denominados frecuentemente en inglés tokens. Así son tokens: las palabras reservadas del lenguaje, los símbolos que denotan los distintos tipos de operadores, identificadores (de variables, de funciones, de procedimientos, de tipos, etc.), separadores de sentencias y otros. ¿QUÉ ENTENDEMOS POR SINTAXIS? En lingüística, sintaxis es el estudio de la función que desempeña cada palabra en el entorno de una frase. Mientras que semántica es el estudio del significado de una palabra tanto a nivel individual como en el contexto de una frase. En los lenguajes de programación, sintaxis es un conjunto de reglas formales que especifican la composición de los programas a base de letras, dígitos y otros caracteres. Por ejemplo, las reglas de sintaxis especifican en C/C++ que cada sentencia o línea de programa debe terminar con un
  • 2. Clase # 6 – Conceptos del Análisis Léxico Por: Ing. Marvin Parada, Compiladores Ciclo I-2016 Página 2 “;”, o que la declaración de tipos debe ir antes que la de variables. (int var;) ¿QUÉ ENTENDEMOS POR SEMANTICA? Semántica en los lenguajes de programación es el conjunto de reglas que especifican el significado de cualquier sentencia, sintácticamente correcta y escrita en un determinado lenguaje. Por ejemplo en el lenguaje Pascal la sentencia: suma:= 27/lado Es sintácticamente correcta, ya que a la izquierda del símbolo de asignación hay un identificador, y a la derecha una expresión. Pero para que sea semánticamente correcta hay que comprobar: a) Lado debe ser compatible con el operador “/” y con el operando 27. b) Suma debe ser un tipo compatible con el resultado de la operación. El ANALIZADOR LEXICO Un programa fuente es una serie de símbolos (letras, símbolos, caracteres especiales: +, *, !). Con estos símbolos se representan las construcciones del lenguaje tales como variables, etiquetas, palabras reservadas, constantes, etc. Es necesario que el compilador o traductor identifique los distintos significados de estas construcciones, que los creadores de lenguajes dan en la definición del lenguaje. El programa fuente se trata inicialmente con el analizador léxico (en inglés scanner), con el propósito de agrupar el texto en grupos de caracteres con significado propio llamados tokens o componentes léxicos, tales como variables, identificadores, palabras reservadas y operadores. Por razones de eficiencia a cada token se le asocia un atributo (o más de uno) que se representa internamente por un código numérico o por un tipo enumerado. Por ejemplo considerar la siguiente sentencia es C/C++: if sueldo == 1000 sueldo * 0.25; El analizador léxico la separa en la siguiente secuencia de tokens:
  • 3. Clase # 6 – Conceptos del Análisis Léxico Por: Ing. Marvin Parada, Compiladores Ciclo I-2016 Página 3 En general, el análisis léxico es un análisis a nivel de caracteres, su misión es reconocer los componentes léxicos o tokens, enviando al analizador sintáctico (en la siguiente etapa) los tokens y sus atributos. CONCEPTOS ANALIZADOR LEXICO Token Es el nombre que se le da a cada patrón definido, éste nombre debe usarse en todos los procesos del análisis en todos los lexemas encontrados. Patrón Es una representación lógica de una serie de agrupaciones de caracteres con características comunes. Lexema Es cada una de las combinaciones de caracteres que encajan en la definición de un patrón o token. Ej. Variable1, x, a, edad, y2, etc. Atributo Características propias de cada token, por tanto se les denomina atributos del token. Gramática Se define como un ente formal para especificar de una manera finita el conjunto de cadenas de símbolos que constituyen un lenguaje. Alfabeto Conjunto finito de símbolos no vacío que conforman una gramática, se representan por ∑ (sigma).
  • 4. Clase # 6 – Conceptos del Análisis Léxico Por: Ing. Marvin Parada, Compiladores Ciclo I-2016 Página 4 Símbolo Entidad abstracta que no se va a definir pues se deja como axioma. Normalmente son letras de alfabetos, números o caracteres especiales como +, -, *, /, etc. No necesariamente serán uno solo, ya que un símbolo puede ser una combinación como palabras reservadas de un lenguaje de programación then, end, beging, else, while, etc. Expresión Regular Representan patrones de cadenas de caracteres. Se conocen más como metalenguajes que sirven para describir los lenguajes regulares. Diagrama de Transición Es el conjunto de secuencias de entrada que representan gráficamente los símbolos validos por la gramática, es una representación de los universales autómatas que aparecen en la matemática y otras ciencias. Tabla de Transiciones Es la manera más cercana de representar los autómatas, consta de filas que representan los estados y las columnas que representan los símbolos de entrada. Adicionalmente se agregan dos columnas para representar los tokens y para indicar retrocesos. Cadena Se define como una secuencia de símbolos de un lenguaje determinado. Por ejemplo 0001, abcd, a+4*b, 11000, etc. Una cadena siempre tiene una longitud que esta denotada por la cantidad de símbolos independientes que la conforman. |abcde| →5 |000111| →6 Cuando la cadena es vacía se representa como |λ|→0. Lenguaje Un lenguaje es un conjunto de palabras que se puede representar con un determinado alfabeto. Autómata Es una construcción lógica que recibe como entrada una cadena de símbolos y produce una salida indicando si la salida es una cadena que pertenece a un determinado lenguaje.