Вы находитесь на странице: 1из 15

UNIVERSIDAD GERARDO BARRIOS

FACULTAD DE CIENCIA Y TECNOLOGA


COMPILADORES E INTRPRETES. CICLO I 2015

ANALISIS
LEXICO
y Diagramas de Transicin
Anlisis Lexico y DT

Objetivos

Conocer el funcionamiento del analizador lxico

Comprender su relacin con la tabla de smbolos.

Entender como interviene la generacin de errores a


partir de sta etapa.

Aprender a especificar un analizador lxico.

Realizar diagramas y tablas de transicion.


Anlisis Lexico y DT

Fases de un
compilador

Compilacin

Anlisis

Lxico
Tokens

Sintctico
Intrucciones

Sntesis

Semntico
significado

Generacin de
Cdigo

Anlisis Lexico y DT

Anlisis Lxico

Est constituido por todas las palabras y


smbolos que lo componen. Para un lenguaje de
programacin la definicin tambin es vlida.

Lo constituyen todos los elementos


individuales
del
lenguaje, denominados
frecuentemente en ingls tokens
Anlisis Lexico y DT

Trminos
Token
As son tokens: las palabras reservadas del
lenguaje, los smbolos que denotan los distintos
tipos de operadores, identificadores (de
variables, de funciones, de procedimientos, de
tipos, etc.), separadores de sentencias y otros.

Anlisis Lexico y DT

Trminos
Token
Elemento lxico del lenguaje
Smbolo No Terminal de las fases siguientes

Patrn
Expresin regular que define el lenguaje
Letra (Letra | Digito)*

Anlisis Lexico y DT

Trminos
Lexema
Secuencia de caracteres que concuerda con un patrn
Numero, caracter.

Atributos

Estructura de datos de cada token para almacenarse en la


TS
Depende del tipo de token
[ID, Lexema, Tipo, Valor, lnea]
Anlisis Lexico y DT

ANALISIS
LEXICO

Un programa fuente es una serie de smbolos


que representan las construcciones del lenguaje
tales como variables, etiquetas, palabras
reservadas, constantes, operadores, entre otros.
El programa fuente se trata inicialmente con el
analizador lxico

Anlisis Lexico y DT

Pasos del AL

Identificar la coleccin de tokens

Estructurar la coleccin de tokens

Describir el lenguaje como expresiones regulares

Anlisis Lexico y DT

EJEMPLO
As, para la siguiente sentencia de Pascal:
IF cuenta = sueldo THEN jefe:= justo;

El analizador lxico la separa en la siguiente


secuencia de tokens:

Anlisis Lexico y DT

10

EJEMPLO
Y les asigna su atributo, habitualmente por medio
de un cdigo numrico cuyo significado se ha
definido previamente.

Anlisis Lexico y DT

11

LEXICO

El

anlisis lxico es un anlisis a nivel de


caracteres, su misin es reconocer los
componentes lxicos o tokens, enviando al
analizador sintctico
Tambin recibe el nombre de explorador
(en ingles scanner).
Anlisis Lexico y DT

12

Ejemplo

Analizador lxico que reconozca los siguientes


elementos:
Nmeros enteros
Operadores aritmticos suma, resta, producto,
divisin, incremento y decremento (+, - *, /, ++,--)
Identificadores
WHILE
Anlisis Lexico y DT

13

Especificacin AL

Especificacin formal
Gramticas Lineales
Recursivas a izquierdas
Recursivas a derechas
expresiones

regulares
Autmatas Finitos (Diagramas de Transicin)
Anlisis Lexico y DT

14

Funciones del AL

Tratar con la tabla de smbolos

Generar tokens bajo demanda del analizador


sintctico

Manejar

el fichero fuente
Ignorar comentarios
Contabilizar posicin de tokens
Preprocesar macros, constantes, includes
Anlisis Lexico y DT

15

Вам также может понравиться