Está en la página 1de 11

LENGUAJES Y AUTOMATAS 1 1

LENGUAJES Y AUTOMATAS 1 2

Ingeniera en Sistemas
Computacionales

PRCTICA # 10

MATERIA
LENGUAJES Y AUTMATAS I

TURNO:
VERPERTINO

NOMBRE:
AGUILAR AGUILAR EDGAR IVAN

Unidad

Expresiones Regulares

Grupo:

3622

Prctica:

Analizador lxico

Nmero:

10

Competencia

Crear y reconocer ER mediante un lenguaje de programacin o


un analizador lxico.

Alumno

Aguilar Aguilar Edgar Ivan

Evaluacin:

Excelente:

Muy Bien: Bien:

Insuficiente:

Duracin:

No
Acreditado:

Comentario

3 hrs.

LENGUAJES Y AUTOMATAS 1 3

Docente

Cuadro de evaluacin
OBJETIVOS DE APRENDIZAJE

Realizar los diagramas de transiciones para el analizador lxico

LENGUAJES Y AUTOMATAS 1 4

MATERIAL
HARDWARE

SOFTWARE

LENGUAJES Y AUTOMATAS 1 5

FUNDAMENTO TEORICO
IDENTIFICADORES JAVA
Los identificadores son los nombres que el programador asigna a variables, constantes,
clases, mtodos, paquetes, etc. de un programa. Caractersticas de un identificador
Java:
Estn formados por letras y dgitos.
No pueden empezar por un dgito.
No pueden contener ninguno de los caracteres especiales vistos en una entrada
anterior.
No puede ser una palabra reservada de Java. Las palabras reservadas en Java
son todas las que aparecen en el punto siguiente.
Ejemplo de identificadores vlidos:
Edad

nombre

$cantidad

_Precio

PrecioVentaPublico

Ejemplo de identificadores no vlidos:


4num

z#

Edad

Java diferencia maysculas y minsculas, por lo tanto, nombre y Nombre son


identificadores diferentes.

PALABRAS RESERVADAS DE JAVA


Las palabras reservadas son identificadores predefinidos que tienen un significado para
el compilador y por tanto no pueden usarse como identificadores creados por el usuario

LENGUAJES Y AUTOMATAS 1 6

en los programas. Las palabras reservadas en Java ordenadas alfabticamente son las
siguientes:

REGLAS, UNA VARIABLE NO PUEDE:


1. Tener el mismo nombre que una palabra reservada del lenguaje. los lenguajes de
programacin tienen palabras reservadas, osea que esas palabras solo pueden
ser usadas por el programa, por eso llevan el nombre de reservadas, pues si
supongamos el caso de que un lenguaje de programacin Xtiene sus palabras
reservadas.. entre las cuales est: ingrear, entonces eso quiere decir que el
usuario NO debe declarar una variable con el nombre ingrsar, porque va a tener
conflictos ms adelante.
2. Slo pueden ser letras, dgitos y el guin bajo subguin. pues en los lenguajes de
programacin hay sintaxis que deben cumplirse al pie de la letra, entonces dice que
las variables solo pueden llevar letras, numeros y el subguin, ejemplo: La siguiente
variable est bien declarada: programando19. La siguiente variable est mal
declarada: %&programando-19 Vemos que insert caracteres especiales, adems
de que uso el guin normal ( no el subguin ), por lo tanto puede que el programa
entienda que es una resta, entonces est mal declarado por sintaxis.
3. Deben comenzar por un carcter (letra). por sintaxis como ya hemos visto, deben
cumplir con stas reglas, entonces no se puede comenzar con un nmero, ya que
se debe comenzar por una letra como dice la regla, ejemplo: La siguiente variable
est bien declarada: paso A paso La siguiente variable est mal declarada: 89pasos
4. Deben iniciar con un carcter (no numero) como vimos en la regla 3, y tambin
puede comenzar con un guin bajo ( _ ), ejemplo: La siguiente variable est bien
declarada: _descuento. La siguiente variable est mal declarada: -descuento. La
siguiente variable est mal declarada: descuento5. No se les pueden llevar espacios en blanco. las variables no pueden llevar espacios
en blanco, solo pueden ser separadas por un signo dedicado a ser usado como un

LENGUAJES Y AUTOMATAS 1 7

espacio, el cual es el subguin ( _ ), entonces en una variable cuando vean un


subguin, prcticamente estn separando algo ( para que no parezca una en
celda ), ejemplo: La siguiente variable est bien declarada: eddy_19 La siguiente
variable est mal declarada: eddy 1
6. No pueden llevar acento ( tilde ), ejemplo: La siguiente variable est bien declarada:
numero
7. La siguiente variable est mal declarada: nmero. Esas son las reglas base, para
la buena declaracin de variables.

ANALIZADOR LXICO
Funciones
o Lee caracteres de entrada
o Genera la lista secuencial de tokens. (Caracteres de smbolos que tiene un
significado).

Palabras reservadas

Cadenas no definidas:

Identificadores

Terminales

Constantes, etc.

o Quita espacios en blanco


o Quita comentarios
o Relaciona errores con la tabla de simbolos
Elementos (Componentes lxicos de Java)

LENGUAJES Y AUTOMATAS 1 8

A. Identificador
a. Composicin
i. Letras
ii. Nmeros
iii. Caracteres especiales
EJEMPLO DE UNA TABLA DE TOKENS
LEXICO
Identificador
Numero
If
Relacional

LEXEMA
Pi, edad, S
52,1
If
<,<=,>,>=,=

PATRON
[a-z A-Z]*
[0-9]
If
< o >= o >= o = o >

En este diagrama de transiciones se aceptan las cadenas que se utilizan para declarar
una variable en el lenguaje Java.

LENGUAJES Y AUTOMATAS 1 9

En el siguiente diagrama de transiciones acepta las variables que se pueden declarar


en el lenguaje java y adems acepta la asignacin de valores numricos y asignar el
valor de una variable a otra (a=b;), tambin debe de terminar con un (;) para que sea
una cadena aceptada.

LENGUAJES Y AUTOMATAS 1 10

Para crear la mitad del compilador se usaron 4 sesiones de la clase en las cuales se
dan a describir:

PRACTICA
En esta sesin se cre la clase AnaLex, en la cual como se comento en la sesin
anterior es una clase JFrame, en la cual su nico funcionamiento va a ser llamar cada
clase de este proyecto. En esta ventana grafica se va a poder ingresar cdigo desde el
TextArea o desde la clase que se realizo antes, la cual llama un .txt.
En esta ventana grfica va a tener 4 botones los cuales van a hacer lo siguiente:
Analizar: Analiza una vez que se haya ingresado cdigo desde el TextArea o
desde el botn Llamar
Llamar: Manda llamar un .txt, para poder colocar el cdigo en el Textarea
Salir: Cerrar toda la ventana

LENGUAJES Y AUTOMATAS 1 11

Conclusin
En este trabajo se analizaron y disearon los diagramas de transiciones con los cuales
nos ayudaran a entender cuales identificadores se aceptaran en un lenguaje java. Los
identificadores en pocas palabras son las variables a utilizar en un lenguaje java estas
tienen ciertas reglas para ser aceptadas.
Con los diagramas de transiciones se observan cuales son los pasos que un analizador
lxico pasa para pode aceptar el identificador, como por ejemplo, puede iniciar con
cualquier letra, numero o smbolos y al terminar siempre debe de terminar con un ;.

También podría gustarte