Sei sulla pagina 1di 5

BenemritaUniversidadAutnomadePueblaFacultaddeCienciasdelaComputacin

Compiladores

Manual de prcticas de laboratorio de compiladores


Prctica 1: Identificacin de elementos tericos
1. Complete las siguientes definiciones
a) El ____________ permite mayor interactividad con el cdigo en tiempo de
desarrollo.
b) ______________ es un generador automtico de analizadores lxicos.
c) Un _________________ es un programa que toma un archivo fuente y genera un
archivo objeto.
d) El compilador _____________ genera lenguaje objeto para una maquina diferente.
e) El analizador lxico tambin es conocido como __________________________.
f) La salida terica de la fase del analizador sintctico es un
_______________________.
g) La ________________________ sirve para guardar y usar la informacin que se va
generando en las diferentes etapas del compilador.
h) La __________________ sirve para conseguir que el programa objeto sea ms
rpido en la ejecucin y necesite menos memoria a la hora de ejecutarse.
i) El _______________________ es un programa que acepta como entrada cdigo
maquina y lo traduce a un lenguaje de alto nivel.
j) ___________________ se considera uno de los primeros compiladores modernos
que tardo en realizarse 18 aos/persona.
2. Complete el siguiente crucigrama de conceptos
HORIZONTALES:
1.-No genera cdigo objeto
2.-Tardo en construirse 18 aos-persona
3.-Este lenguaje no genera cdigo objeto
6.-Este compilador genera lenguaje objeto para una mquina diferente
9.-Manejar estos elementos es importante en los compiladores
10.-El Analizador Sintctico da como salida este tipo de estructura
VERTICALES:
1.-Es un generador automtico de analizadores lxicos
3.-Es un programa que toma un archivo fuente y genera un archivo objeto
7.-el analizador sintctico tambin es llamadoPARSER
9.-Siglas del lenguaje intermedio (universal computer oriented lenguaje)

3. Completa el siguiente prrafo.


Para disear un compilador es necesario tomar en cuenta una serie de _________: En
la primera_________ se utiliza el ________________, el cual se encarga de por
ejemplo sustituir macros, eliminar comentarios, etc. de ah pasamos a la segunda
______________ que es fundamental y consta del analizador________________, el
analizador ______________ y el generador de cdigo que traduce el cdigo fuente a
un cdigo ________________ o a un cdigo ________________, segn se trate de un
compilador o un intrprete. Para la tercera ____________ no siempre se realiza y
consiste en hacer __________________ sobre el cdigo generado. Finalmente en la
cuarta _________________ se traduce el cdigo a un cdigo _______________ o __
_________________.

4. En la siguiente sopa de letras encuentra cada uno de los 11 conceptos y da una


breve descripcin de ellos.
Metacompilador, ensamblador, optimizador, lexema, Traductor, fortran, token,
descompilador, autocompilador, lxico, semntico,

Prctica 2: Lenguajes y sus operaciones


1. Para los siguientes lenguajes aplicar las operaciones:
L2={space, como, estas}
L1={hola, adis}
2
a. L1 L2
b. L2+
c. L2* L2
d. L1 (L1 L2L1)
2. Resultar posible plantear un lenguaje que dentro de sus palabras se
encuentre la frase holaspacecomospaceestas, si es as proponlo.
3. Para los siguientes lenguajes aplicar las operaciones:
L2={1,3,5,7,9}
L1={0,2,4,6,8}
a. (L1L2)*
b. L2 L2
c. L2* L2
d. L1 (L1 L2L1)
4. Para los siguientes lenguajes aplicar las operaciones:
L2={space, como, estas}
L1={hola, adis}
2
a. L1 L2
b. L2+
c. L2* L2
d. L1 (L1 L2L1)
Prctica 3: Expresiones Regulares, Autmatas y Lenguajes
1. Disear un autmata que acepte palabras con un nmero par de 0s y
un nmero impar de 1s.
2. Disear una ER que genere correos electrnicos
3. Dado el alfabeto ={0,1,2,..,9,A,B,C,D,E,F,H} y los lenguajes
L2=(A|B|C|D|E|F)+ L3=H* , plantear
L1=(0|1|2..|9)+
a. Lenguaje de los nmeros hexadecimales
b. L3+ (L1L2)2
c. Lenguaje de mximo 4 letras del alfabeto

Prctica 4: Expresiones Regulares, Autmatas y Lenguajes


1.- Encontrar un autmata Finito que represente la expresin regular:
b*(ab*ab*)*
b*(ab*ab*a)*

2.- Hallar una expresin regular y su Autmata Finito para las cadenas que contienen un
numero par de as seguida de un nmero impar de bs.
3.- Dado los siguientes Autmata Finitos obtener su expresin regular equivalente.

Prctica 5: Expresiones Regulares, Autmatas y Lenguajes


1. Dado el alfabeto ={a, b, c}, construir expresiones regulares cuyos
lenguajes asociados contengan las palabras w que satisfacen las
condiciones siguientes:
a. Hay un nmero par de as en w.
b. Hay 4i + 1 bs en w, para algn i 0.
c. |w| = 3i, para algn i 0.
d. La cadena abc no aparece en w.
2. Una expresin regular es ambigua si hay una palabra que puede ser
obtenida de la expresin regular de, como mnimo, dos formas

diferentes. De las expresiones regulares siguientes, cules con


ambiguas:
a. a((ab)*cd)* + a(ababcb*)*a*
b. aab*(ab)* + ab* + a*bba*
c. aaba* + aaaba + aabba* + a
3. Dado el lenguaje construya las Expresiones Regulares donde =
{a,b}
a. L = { x * : la longitud de x es divisible por 3}
b. L = { x * : x comienza por a y termina por ab }
c. L = { x * : |x| 5 y el quinto smbolo contado desde el final
es a }
4. Indica si son verdad o no las siguientes afirmaciones:
a ) baa L(a*b*a*b*)
b ) L(b*a*) L( a*b*) = L(a* b*)
c ) L(a*b*) L(c*d*) =
d ) abcd L((a(cd)*b)*)
5. Sea ={a,b}. Escribe expresiones regulares para los siguientes
lenguajes:
a ) cadenas con al menos tres a's
b ) cadenas con a lo sumo tres a's
c ) cadenas con un nmero de a's divisible por 3
d ) cadenas con al menos una aparicin de la subcadena aaa
e) cadenas en las que las a's van agrupadas como mnimo de tres en
tres.
6. Dados los siguientes lenguajes realizar L1 = { a,b,c,aa,bb,cc,} y
L2 = { z,y,x,zz,yy,xx,}
a. L1 L2
b. L1 L2
c. (L1 L2)*
7. Realizar las expresiones regulares para los lenguajes:
a ) nmeros decimales
b ) identificadores
c ) nmeros binarios pares y nmeros octales impares
8. Indicar o enumerar las palabras que se forman dada la ER
a ) (2| 1 | 0)+
b ) [hol (a+ ita+ ota)[Letras]+]+

Potrebbero piacerti anche