You are on page 1of 22

MANUAL DE PRCTICAS

INGENIERA EN SISTEMAS COMPUTACIONALES



PLAN ISIC-2010


























LENGUAJES Y AUTOMATAS II

SCD-1016











ndice
INTRODUCCIN ---------------------------------------------------------------------------------------------------------------1

PRCTICA 1
Arboles de Expresiones ----------------------------------------------------------------------------------------------------4
PRCTICA 2
Convertir expresiones mediante el uso de notaciones prefijas --------------------------------------------5
PRCTICA 3
Convertir expresiones mediante el uso de notaciones infijas ----------------------------------------------7
PRCTICA 4
Convertir expresiones mediante el uso de notaciones postfijas.------------------------------------------11
PRCTICA 5
Saber cuntos recursos y cunto tiempo consume cada instruccin de cdigo intermedio ----14


LISTA DE MATERIAL, EQUIPO O REACTIVO A UTILIZAR -------------------------------------------------------17

LISTA DE BIBLIOGRAFA REQUERIDA --------------------------------------------------------------------------------17

CONTROL DE CAMBIOS DEL MANUAL DE PRCTICAS --------------------------------------------------------18

Fecha de Actualizacin 07/04/2014 Pgina 1


Lenguajes y Autmatas II [SCD-1016]

INTRODUCCIN

Desde su nacimiento, la teora de autmatas ha encontrado aplicacin en muy diversos campos.

Esto se debe a que resulta muy natural considerar, tanto los autmatas como las mquinas
secuenciales, sistemas capaces de transmitir (procesar) Informacin.

En definitiva, esto es equiparable a cualquier sistema existente en la naturaleza, que recibe seales de
su entorno, reacciona ante ellas y emite as nuevas seales al ambiente que le rodea.

Algunos De los campos donde ha encontrado aplicacin la teora de autmatas son:

Teora de la Comunicacin
Teora de Control
Lgica de los circuitos secuenciales
Ordenadores
Teora lgica de los sistemas evolutivos y auto
- Reproductivos
Reconocimiento de patrones
Fisiologa del sistema nervioso
Traduccin automtica de lenguajes

Lenguajes y autmatas:
Un autmata resuelve un problema mediante el clculo de una funcin de una forma autnoma: Recibe
unos datos y, cuando termina su trabajo, da un resultado. El mismo problema puede recibir otra
coleccin de datos distinta (instance-ejemplar) yda un resultado correcto en cada caso mediante el
clculo de la misma funcin.
Un ejemplar se puede ver como una palabra de un lenguaje. El conjunto de ejemplares de entrada
para los que el problema tiene solucin es un lenguaje. El problema tiene solucin cuando existe un
autmata que calcula el resultado correctamente. Hay lenguajes que no requieren autmatas tan
complejos como las las mquinas de Turing para resolver los problemas que se plantean sobre ellos.
Ms simples son los autmatas finitos y los autmatas con pila. Cada tipo de autmatas reconoce
una clase de lenguajes.

Datos Autmata Resultado
Los algoritmos de generacin de lenguajes se llaman gramticas. Estos mecanismos fueron
propuestos por Chomsky para definir estructuras sintcticas en el estudio del lenguaje natural (1950).
Las partes del lenguaje natural libres de contexto tienen una estructura definida por gramticas
incontextuales y los lenguajes incontextuales son reconocidos por autmatas con pila. La Informtica
aprovech rpidamente estos estudios sobre el lenguaje natural aplicndolos a la construccin de
analizadores sintcticos, imprescindibles en compilacin.
Hay una jerarqua de lenguajes formales, a la que corresponde una jerarqua de autmatas:
Lenguajes regulares Lenguajes incontextuales Lenguajes contextuales
Autmatas finitos Autmatas con pila Mquinas de Turing.
Todo ello se corresponde con el nivel de abstraccin requerido para resolver los tipos de problemas
asociados a un determinado lenguaje con las herramientas ms sencillas posible, en aras de la
eficiencia.

Fecha de Actualizacin 07/04/2014 Pgina 2


Lenguajes y Autmatas II [SCD-1016]


Prctica
1


ARBOLES DE EXPRESIN
Observaciones: Esta prctica cubre la Prctica # 2 del temario que dice
Realizar arboles de expresiones en casos de estudio.

1.- OBJETIVO
Implementacin del rbol binario y su uso para almacenar expresiones matemticas en memoria



2.- MARCO TERICO
RBOLES DE EXPRESIN
Los rboles de expresiones representan el cdigo de nivel del lenguaje en forma de datos. Los datos se almacenan
en una estructura con forma de rbol. Cada nodo del rbol de expresin representa una expresin, por ejemplo,
una llamada al mtodo o una operacin binaria, como x < y.
REGLAS PARA LA CONSTRUCCIN DE RBOLES DE EXPRESIN
Para construir el rbol de expresiones que represente nuestra expresin matemtica es necesario construir
primero la misma expresin pero en la notacin polaca correspondiente y a partir de esta es que se construye el
rbol. El algoritmo usado para transformar una expresin infija a prefija es explicado a continuacin.
Sea A una expresin infija cualquiera, formada por operadores, parntesis (izquierdos y derechos) y
operados, tambin se usar una pila para los operadores. El procedimiento seguido es el siguiente:
Se lee un elemento de A, si este es un operador o un parntesis izquierdo, entonces se acta segn la regla I y si es
un operando entonces se enva directamente a la expresin de notacin polaca.
Si el elemento ledo de A es un parntesis derecho, entonces se desopilarn elementos de la pila de operadores
hasta encontrar el correspondiente parntesis izquierdo.
Cada elemento desopilado pasa a formar parte de la notacin polaca, excepto los parntesis.
Cuando no queden elementos en A, entonces se desopilan operadores de la pila, hasta que esta quede vaca.

Fecha de Actualizacin 07/04/2014 Pgina 3


Lenguajes y Autmatas II [SCD-1016]

REGLA I:
Existe un orden de prioridad para los operadores, que de menor a mayor es el siguiente: suma (+) y resta (-),
multiplicacin (*) y divisin (/), exponenciacin (^), operadores unarios.
El parntesis izquierdo lo trataremos como un operador (aunque no lo es) cuyo orden de prioridad es el mayor
de todos cuando se quiera apilar y el menor de todos cuando est en la cima de la pila.
Cuando se intente apilar algn operador se har lo siguiente:
Si es un operador unario entonces se apila, si es un operador binario, se comparar su prioridad con el ltimo
insertado en la pila (el de la cima), si su prioridad es mayor, entonces se apilar. Si ocurre lo contrario (su
prioridad es menor o igual) entonces el operador de la cima de la pila se desopilar y pasar a formar parte de la
notacin polaca. Se volver a intentar apilar el operador
Siguiendo la misma regla, hasta que se pueda apilar, si la pila queda vaca tambin se apila. El parntesis
izquierdo siempre se apilar y no podr ser desopilado por ningn operador y por tanto no formar parte de la
notacin polaca inversa.
CONSTRUCCIN DEL RBOL BINARIO DE EXPRESIONES
El algoritmo usado para construir el rbol no usa como tal la expresin postfija ya conformada, sino que el rbol
se va construyendo usando las mismas reglas con las que se construye la notacin postfija, una pila para los
operadores y otra para los nodos del rbol, ambas no son necesitadas al terminar el rbol. El algoritmo es el
siguiente:
Se siguen las mismas reglas expuestas anteriormente usando la pila de operadores, pero cuando se encuentra un
operando o un operador es desopilado, entonces se crea el nodo correspondiente y se acta segn la regla II. Al
finalizar el algoritmo solo debe quedar un nodo apilado en la pila de nodos, el que constituye el nodo raz de
nuestro rbol de expresiones.
Regla II.
Si el nodo corresponde a un operando, entonces se apila. Si el nodo corresponde a una operador unario entonces
se desapila un nodo de la pila de nodos y es enlazado a la rama izquierda del nodo correspondiente al operador
unario y este ltimo es apilado. Si el nodo corresponde a un operador binario entonces dos nodos son desapilados
de la pila de nodos, el primero es enlazado a la rama derecha del nodo binario y el segundo a la rama izquierda,
nuevamente este nodo es apilado.


Fecha de Actualizacin 07/04/2014 Pgina 4


Lenguajes y Autmatas II [SCD-1016]

3.- MATERIAL, EQUIPO O REACTIVO

I. Sistema Operativo
II. Microsoft Office Word
III. Computadora

4.- COMPETENCIAS ESPECFICAS

Realizar una investigacin sobre a los arboles de expresin y colocar algunos ejemplos.
Convertir un rbol general a binario.
Colocar un rbol binario en una lista.
Hacer los 3 recorridos a un rbol binario
Hacer la construccin de un rbol binario de bsqueda a partir del recorrido preorden, inorden y
posorden.

5.- RESULTADOS

El alumno entregara un documento contendiendo lo siguiente:
1.- Cuales son los tipos de rboles.
2.- Como se realiza una Conversin de un rbol general
3.- Cuales son y como se realizan los recorridos de un rbol.

6.- CONCLUSIONES

El alumno conocer y entender todo lo relacionado a los arboles generales y binarios.

7.- BIBLIOGRAFA

http://msdn.microsoft.com/es-es/library/bb397951(v=vs.90).aspx
http://www.utm.mx/~jahdezp/archivos%20estructuras/arboles%20con%20expresiones.pdf
https://sites.google.com/site/iscmendezportafolio/arboles-de-expresion
http://www.esdebian.org/wiki/interpretprete-funciones-mediante-arbol-binario-expresiones



Fecha de Actualizacin 07/04/2014 Pgina 5


Lenguajes y Autmatas II [SCD-1016]


Prctica 2


CONVERTIR EXPRESIONES MEDIANTE EL USO DE
NOTACIONES PREFIJAS
Observaciones: Esta prctica cubre la Prctica # 3 del temario que dice
Realizar conversiones de tipos en expresiones, la Prctica # 7 del temario
que dice Convertir expresiones mediante el uso de notaciones prefijas,
infijas y postfijas, la Prctica # 7 del temario que dice Definir e
implementar la notacin que ms se ajuste a las estructuras de evaluacin
de expresiones de lenguaje.

1.- OBJETIVO

Implementacin de notacin prefija, en funcin de la situacin concreta en la que se pongan los operadores
respecto de los operandos.

2.- MARCO TERICO

La notacin de prefijo o notacin prefija, tambin conocida como polaca, es una forma de notacin para:

La lgica
La aritmtica
El lgebra.

Su caracterstica distintiva es:

- Los operandos conservan el mismo orden que la notacin infija equivalente.
- No requiere de parntesis para indicar el orden de precedencia de operadores ya que el es una
operacin.
- Se evala de izquierda a derecha hasta que encontrmosle primer operador seguido inmediatamente de
un par de operandos.
- Se evala la expresin binaria y el resultado se cambia como un nuevo operando. Se repite este hasta
que nos quede un solo resultado.

+A B C (A+B)*C



Fecha de Actualizacin 07/04/2014 Pgina 6


Lenguajes y Autmatas II [SCD-1016]

El resultado es una sintaxis que carece de parntesis u otros signos de agrupacin. Puede ser analizada sin
ambigedad.

3.- MATERIAL, EQUIPO O REACTIVO

I. Sistema Operativo Windows
II. Microsoft Office Word
III. Computadora

4.- COMPETENCIAS ESPECFICAS
Aplicar los tipos de notacin para la conversin de expresiones: Infija, prefija y posfija.
Representar expresiones mediante el cdigo intermedio.
Reconocer el manejo de tipos en las expresiones y el uso de operadores.
Desarrollar las acciones que representen la estructura de un lenguaje de programacin de alto nivel en un
cdigo intermedio.
Aplicar las acciones construidas a la gramtica del lenguaje prototipo.
Evaluar el prototipo completo construyendo algunos programas tipo usando la gramtica definida.

5.- RESULTADOS

o Aplicar los tipos de notacin para la conversin de expresiones: Infija, prefija y posfija.
o Investigar los pasos para realizar la trasformacin de la expresin infija a posfija
o 2.-Realizar el siguiente ejercicio de la expresin aritmtica y Realizar su trasformacin a posfija.
Utilizando una pila A+(B*C-(D/E^F)*9)*H
o Evaluacin de expresiones posfija
o Desarrollar las acciones que representen la estructura de un lenguaje de programacin de alto nivel en
un cdigo intermedio.

6.- Conclusiones

La notacin de prefijo o notacin prefija, tambin conocida como polaca.
El resultado es una sintaxis que carece de parntesis u otros signos de agrupacin. Puede ser analizada sin
ambigedad.




Fecha de Actualizacin 07/04/2014 Pgina 7


Lenguajes y Autmatas II [SCD-1016]

7.- Bibliografa

o wikipedia.org/wiki/Notaci%C3%B3n_polaca que es notacin polaca
o http://mathworld.wolfram.com/ReversePolishNotation.html








Fecha de Actualizacin 07/04/2014 Pgina 8


Lenguajes y Autmatas II [SCD-1016]


Prctica 3



CONVERTIR EXPRESIONES MEDIANTE EL USO DE
NOTACIONES INFIJAS
Observaciones: Esta prctica cubre la Prctica # 3 del temario que dice
Realizar conversiones de tipos en expresiones, la Prctica # 7 del temario
que dice Convertir expresiones mediante el uso de notaciones prefijas,
infijas y postfijas, la Prctica # 7 del temario que dice Definir e
implementar la notacin que ms se ajuste a las estructuras de evaluacin
de expresiones de lenguaje.

1.- OBJETIVO

Lograr conocer y aplicar las conversiones de expresiones a travs del uso de
notaciones infijas

2.- MARCO TERICO
Infija:
La Expresin o Notacin Infija es la forma ms comn que utilizamos para escribir expresiones matemticas, estas
notaciones se refiere a que el operador esta entre los operados. La notacin infija puede estar completamente
parentizada o puede basarse en un esquema de precedencia de operadores as como el uso de parntesis para
invalidar los arreglos al expresar el orden de evaluacin de una expresin:
3*4=12
3*4+2=14
3*(4+2)=18
Notacin infija: La notacin habitual. El orden es primer operando, operador, segundo operando

CONVERSIN EXPRESIN INFIJA A POSFIJA
El siguiente algoritmo traduce una expresin en notacin infija a notacin postfija:
Entrada: Una lista que contiene los trminos de la ecuacin en notacin infija (la notacin habitual).
Salida: Una lista que contiene los trminos de la ecuacin en notacin postfija.
Datos locales: Una pila, que va a contener operadores y parntesis izquierdos.
Las pilas son estructuras de datos muy usadas para la solucin de diversos tipos de problemas. Pero
tal vez el principal uso de estas estructuras es el tratamiento de expresiones matemticas.



Fecha de Actualizacin 07/04/2014 Pgina 9


Lenguajes y Autmatas II [SCD-1016]


3.- MATERIAL, EQUIPO, REACTIVO o SOTFWARE A UTILIZAR
I. Sistema Operativo Windows
II. Microsoft Office Word
III. Computadora
IV. Lenguajes de Programacin de alto Nivel

4.- COMPETENCIAS ESPECFICAS

I. Organizar por equipos a los alumnos (3 integrantes mximo).
II. Elaborar los siguientes ejemplos 5 * (6+2) 12 / 4
III. Identificar:
a. Objetivo
b. Detallar el procedimiento de conversiones infijas a postfijas
c. Elaborar el ejercicio mediante el procedimiento adecuado

5. RESULTADOS
Para la conversin de notaciones infijas atreves de pilas se requiere realizar el siguiente procedimiento.

ALGORITMO PARA CONVERTIR EXPRESIONES INFIJAS EN POSTFIJAS (RPN)
1. Incrementar la pila
2. Inicializar el conjunto de operaciones
3. Mientras no ocurra error y no sea fin de la expresin infija haz
o Si el carcter es:
1. PARENTESIS IZQUIERDO. Colocarlo en la pila
2. PARENTESIS DERECHO. Extraer y desplegar los valores hasta encontrar parntesis
izquierdo. Pero NO desplegarlo.
3. UN OPERADOR.
Si la pila esta vaca o el carcter tiene ms alta prioridad que el elemento del
tope de la pila insertar el carcter en la pila.
En caso contrario extraer y desplegar el elemento del tope de la pila y repetir
la comparacin con el nuevo tope.
4. OPERANDO. Desplegarlo.
4. Al final de la expresin extraer y desplegar los elementos de la pila hasta que se vace.









Fecha de Actualizacin 07/04/2014 Pgina 10


Lenguajes y Autmatas II [SCD-1016]





Ejemplo: 5 * (6+2) 12 / 4






























Smbolo Pila Expresin P
5 ( 5
* ( * 5
( ( * ( 5
6 ( * ( 5, 6
+ ( * ( + 5, 6
2 ( * ( + 5, 6, 2
) ( * 5,6,2,+
- ( - 5,6,2,+,*
12 ( - 5,6,2,+,*,12
/ ( -, / 5,6,2,+,*,12
4 ( -, / 5,6,2,+,*,12,4
) 5,6,2,+,*,12,4,/,-

Fecha de Actualizacin 07/04/2014 Pgina 11


Lenguajes y Autmatas II [SCD-1016]



6.- CONCLUSIONES
Las pilas las listas enlazadas, todos sus mtodos y las diferentes expresiones son una
de las herramientas utilizadas para programar y procesar de una manera
automatizada todos los sistemas que usamos DIA tras DIA en relacin a tcnicas o
mtodos para agilizar operaciones se refiere, es su principio fundamental dar
soluciones a procesos que ameritan de largos pasos que dan como resultado el
control de un asusto. Estas herramientas son uno de los instrumentos ms usados en
la programacin para estructurar y organizar informacin.



7.- BIBLIOGRAFA

Metodologa de la Programacin, PROGRAMACION ESTRUCTURADA,

Luis Joyanes Aguilar, Editorial McGraw-Hill.














Fecha de Actualizacin 07/04/2014 Pgina 12


Lenguajes y Autmatas II [SCD-1016]


Prctica 4



CONVERTIR EXPRESIONES MEDIANTE EL USO DE
NOTACIONES POSTFIJAS.

Observaciones: Esta prctica cubre la Prctica # 3 del temario que dice
Realizar conversiones de tipos en expresiones, la Prctica # 7 del temario
que dice Convertir expresiones mediante el uso de notaciones prefijas,
infijas y postfijas, la Prctica # 7 del temario que dice Definir e
implementar la notacin que ms se ajuste a las estructuras de evaluacin
de expresiones de lenguaje.

1.- OBJETIVO
Conocer la conversin entre la expresin en notacin infija y postfija mediante
la utilizacin de una pila. Considerando las prioridades entre los operadores
que aparecen en la expresin.
Conocer y aplicar las notaciones comunes de las frmulas aritmticas y lgicas.
Poder identificar que operador va antes que los operando.
Conocer los mtodos para dar valor a una variable.
2.- MARCO TERICO
Notacin Postfija
Notacin postfija: El orden es primer operando, segundo operando, operador.
Para evaluar una expresin en notacin infija en un valor especfico para se deben seguir las
reglas matemticas para la prioridad de las operaciones:
Las potencias tienen prioridad sobre cualquier operacin
La multiplicacin y la divisin tienen prioridad sobre la suma y la resta.
Si se presenta un parntesis, se deben realizar primero las operaciones dentro de ste. Si
hay un parntesis dentro de otro tiene prioridad el parntesis interno.

Fecha de Actualizacin 07/04/2014 Pgina 13


Lenguajes y Autmatas II [SCD-1016]

Por el contrario, en la notacin postfija siempre se trabaja de izquierda a derecha; note adems
que la notacin postfija no tiene parntesis por la forma lineal en que se lee. Comparemos un
ejemplo en donde se evala un valor en una expresin utilizando estas dos notaciones.
Las operaciones se indican mediante operadores, que en nuestro caso representan las
operaciones suma, resta, producto, divisin e igualdad, todas ellas operaciones binarias
(necesitan exactamente dos argumentos para poderse evaluar).

3.- MATERIAL, EQUIPO, REACTIVO o SOTFWARE A UTILIZAR
Sistema Operativo Microsoft
Lenguajes de Programacin de alto Nivel
Computadora
Internet
4.- COMPETENCIAS ESPECFICAS
I. Organizar por equipos a los alumnos (4 integrantes mximo).
II. Capacidad crtica y autocrtica
III. Investigar la jerarqua de los operadores
IV. Investigar los pasos para la conversin Infijo a Postfijo usando pilas
V. Investigar la evaluacin de expresiones aritmticas mediante pilas
VI. Elaborar ejercicios


5. RESULTADOS

Evaluacin de Expresiones
Entrada: 3 + 4 * 2 / ( 1 - 5 ) ^ 2 ^ 3


(2+(3*4)) = x ((2+3)*4) = x

Notacin prefija

Notacin infija

Notacin postfija

Fecha de Actualizacin 07/04/2014 Pgina 14


Lenguajes y Autmatas II [SCD-1016]




Entrada: 3 + 4 * 2 / ( 1 - 5 ) ^ 2 ^ 3
Token Accin Salida (en RPN) Stack de operadores Notas
3 agrega token a la salida 3
+ Pushtoken al stack 3 +
4 agrega token a la salida 3 4 +
* Pushtoken al stack 3 4 * + * tiene mayor precedencia que +
2 agrega token a la salida 3 4 2 * +
/ Pop stack a la salida 3 4 2 * + / y * tienen la misma precedencia
Pushtoken al stack 3 4 2 * / + / tiene mayor precedencia que +
( Pushtoken al stack 3 4 2 * ( / +
1 agrega token a la salida 3 4 2 * 1 ( / +
- Pushtoken al stack 3 4 2 * 1 - ( / +
5 agrega token a la salida 3 4 2 * 1 5 - ( / +
) Pop stack a la salida 3 4 2 * 1 5 - ( / + Repite hasta que sea encontrado "("
Pop stack 3 4 2 * 1 5 - / + Descarta parntesis emparejados
^ Pushtoken al stack 3 4 2 * 1 5 - ^ / + ^ tiene mayor precedencia que /
2 agrega token a la salida 3 4 2 * 1 5 - 2 ^ / +

Fecha de Actualizacin 07/04/2014 Pgina 15


Lenguajes y Autmatas II [SCD-1016]

^ Pushtoken al stack 3 4 2 * 1 5 - 2 ^ ^ / + ^ es evaluado de derecha a izquierda
3 agrega token a la salida 3 4 2 * 1 5 - 2 3 ^ ^ / +
end Pop todo el stack a la salida 3 4 2 * 1 5 - 2 3 ^ ^ / +


7.- BIBLIOGRAFA
http://www.neptalium.com/blog/tag/notacion-postfija/
http://www.tec-digital.itcr.ac.cr/revistamatematica/ContribucionesV7_n2_2006/Parseador/node2.html
http://casicodigo.blogspot.mx/2012/11/conversion-de-expresiones-matematicas.html


Fecha de Actualizacin 07/04/2014 Pgina 16


Lenguajes y Autmatas II [SCD-1016]


Prctica 5



SABER CUNTOS RECURSOS Y CUNTO TIEMPO
CONSUME CADA INSTRUCCIN DE CDIGO
INTERMEDIO
Observaciones: Esta prctica cubre la Prctica # 13 Saber cuntos
recursos y cunto tiempo consume cada instruccin de cdigo intermedio,
la Prctica # 14 Evaluar el cdigo intermedio generado para los programas
escritos en el lenguaje de su caso de estudio y si aplica realizar la
optimizacin correspondiente, la Prctica # 15 Poder establecer una
equivalencia entre las instrucciones del lenguaje intermedio y las
instrucciones en ensamblador.


1.- OBJETIVO
Saber cuntos recursos y cunto tiempo consume cada instruccin de cdigo intermedio

2.- MARCO TERICO

Generacin de cdigo y representaciones intermedias

Generalmente se genera una representacin intermedia del programa fuente, lo cualpermite abstraerse de la
mquina destino sobre el cual se genera el cdigo final, permitiendouna mayor portabilidad del compilador a
otros sistemas. Una de las representacionesintermedias ms utilizadas consiste en una estructura de rbol, esta es
particularmente adecuadapara el uso de tcnicas de generacin de cdigo optimizante. Esta forma fue la elegida
para eldesarrollo del compilador.

Cada subrbol de la representacin intermedia est asociado a una operacin instruccin de mquina (la cual
puede ser virtual). Ciertos subrboles o patrones representan operaciones.

La generacin de cdigo se realiza recorriendo el rbol y generado cdigo a medida que se van reconociendo los
patrones correspondientes a cada operacin, la forma de recorrido es elegida con criterios optimizadores del
cdigo generado.

Cada operacin o patrn tiene un costo asociado, generalmente con respecto al uso de recursos (registros o ciclos
de reloj) requeridos. El problema principal radica en encontrar una cobertura del rbol por un conjunto de

Fecha de Actualizacin 07/04/2014 Pgina 17


Lenguajes y Autmatas II [SCD-1016]

patrones (operaciones) cuyo costo sea mnimo. Esto soluciona en forma directa el problema de seleccin de
instrucciones (ptimas) para un rbol dado.

3.- MATERIAL, EQUIPO, REACTIVO o SOTFWARE A UTILIZAR

a. Ordenador
b. Programa procesador de texto
4.- COMPETENCIAS ESPECFICAS

c. Organizar por equipos a los alumnos (3 integrantes mximo).
d. Investigar las diferentes forma de medir el tiempo de ejecucin de cdigo intermedio
e. Conocer que recursos se consumen en invocacin a funciones y expresiones simples.
f. Colocar un ejemplo de las tcnicas que se utilizan para analizar el tiempo de ejecucin del
cdigo intermedio
5.- RESULTADOS
Mltiples lenguajes y compiladores
Formulan+m mdulos -> n*m compiladores
La optimizacin es la fcil Representacin y modificacin de Modelos de generacin de cdigo o Mquinas
abstractas Ejemplos :FAM, G-machine, mquina de Warren Compiladores transportables PASCAL /P-Code,
JAVA
Interpretacin rpida OAKLisp, CLISP Depuracin Intrpretes de C u otros lenguajes
La mejor manera de optimizar el cdigo es hacer ver a los programadores que optimicen su cdigo desde el
inicio, el problema radica en que el costo podra ser muy grande ya que tendra que codificar ms y/o hacer su
cdigo mas legible.
Los criterios de optimizacin siempre estn definidos por el compiladormuchos de estos criterios pueden
modificarse con directivas del compilador desde el cdigo o de manera externa.

Fecha de Actualizacin 07/04/2014 Pgina 18


Lenguajes y Autmatas II [SCD-1016]




6.- CONCLUSIONES

La conclusin a la que llego nuestro equipo es que el tiempo de ejecucin es en
factor importante para los programadores y compiladores ya que al tener un buen
control de tiempo en la ejecucin de las tareas dentro del programa la aplicacin
es eficiente, se puede saber cuntos recursos se necesitan para la correcta
funcionalidad del programa.
Los recursos tambin son importantes ya que dependen mucho de estos la
funcionalidad ya que si el programa no cuenta con los recursos adecuados no se
ejecutara la aplicacin o de otra forma funcionara ineficientemente.


7.- BIBLIOGRAFA


http://cic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:compi:comp_sesion21_2008-1.pdf
http://www.cvc.uab.es/shared/teach/a25002/Codigo%20intermedio.pdf
http://www.lcc.uma.es/~galvez/ftp/tci/tictema7.pdf
http://www.giaa.inf.uc3m.es/docencia/II/PL1/ci05-06.pdf






Fecha de Actualizacin 07/04/2014 Pgina 19


Lenguajes y Autmatas II [SCD-1016]

LISTA DE MATERIAL, EQUIPO O REACTIVO A UTILIZAR (16)
FOLIO NOMBRE DEL MATERIAL, EQUIPO O REACTIVO CANT. UNIDAD
1 Sistema Operativo 1
2 Lenguajes de Programacin de alto Nivel 1
3 Microsoft Office 1






LISTA DE BIBLIOGRAFA REQUERIDA (17)
FOLIO BIBLIOGRAFIA CANT
1
Estructura de datos y algoritmos Alfred V. Aho John e. hopcroft
Jeffrey D. UllmanISC-K0005.1
Autmatas Programables Josep Balcells, Jos Luis Romeral
ISC-U0002 Alfaomegamaracombo
1
2
Estructura de datos y algoritmos Alberto Jaime Sisa.
ISC-K0006.1
1
3
Teora de Autmatas Lenguajes y Formales DeanKelley
ISC-U0003
1
4
Teora de Autmatas Lenguajes y Computacin John E. Hopcroft.
ISC-U0007 PEARSON ADDISON WESLEY.
1
5 Kelley, Dean, Teora de Automatas y Lenguajes Formales, Prentice Hall.
Brookshear. Teora de la Computacin, Lenguajes Formales,Autmatas y
Complejidad. Addison Wesley
1
6
Lenguajes Formales y Teora de la Computacin John Martin
ISC-U0004 MC GRAW HILL 3 edicin.
1







Fecha de Actualizacin 07/04/2014 Pgina 20


Lenguajes y Autmatas [SCD-1016]

CONTROL DE CAMBIOS DEL MANUAL DE PRCTICAS

DATOS GENERALES
FECHA DE
ACTUALIZACION
ELABOR Y/O ACTUALIZ DESCRIPCIN DE LA ACTUALIZACIN
20/08/2013
LIC. AGEO GUZMN GARDUO

SE ACTUALIZ LA BIBLIOGRAFA Y SE ANOTARON LAS OBSERVACIONES PERTINENTES, PARA TENER CONSISTENCIA DE LAS
PRCTICAS QUE MARCA EL TEMARIO Y LAS DEL MANUAL DE PRCTICAS.
SE ACTUALIZ EL MANUAL DE PRACTICAS.
07/04/2014
LIC. AGEO GUZMN GARDUO

SE ACTUALIZ EL MANUAL DE PRACTICAS CON EL FORMATO VIGENTE.
EL PUNTO DE COMPETENCIAS ESPECFICAS SE RETROALIMENTO.
SE CORRIGIO EL INDICE POR NO COINCIDIR EL NUMERO DE HOJA QUE INDICABA CON LA CORRECTA.

You might also like