EXAMEN GUIA Lenguajes, Compiladores y Sistemas Operativos 1. Considere la siguiente gramatica: S ::= AB A ::= a A ::= BaB B ::= bbA >Cual de las siguientes frases es FALSA? A La longitud de toda cuerda producida por la gramatica es par. B Ninguna cuerda producida por la gramatica tiene un numero impar de b's conse- cutivas. C Ninguna cuerda producida por la gramatica tiene tres a's consecutivas. D Ninguna cuerda producida por la gramatica tiene cuatro b's consecutivas. E Toda cuerda producida por la gramatica tiene al menos tantas b's como a's. 2. >Cuales de las siguientes frases son ciertas para un interprete? I. Genera codigo objeto. II. Maneja variables de tipo estatico. III. Maneja variables de tipo dinamico. A Ninguna BI C I y II D III E I, II y III 3. Una denicion particular de \word" esta dada por las siguientes reglas: <word> ::= <letter> j <letter> <pairlet>j <letter> <pairdig> <pairlet> ::= <letter> <letter> j <pairlet> <letter> <letter> <pairdig> ::= <digit> <digit> j <pairdig> <digit> <digit> <letter> ::= a j b j c j : : : j z <digit> ::= 0 j 1 j 2 j : : : j 9 >Cuales de las siguientes entidades lexicas pueden ser derivadas a partir <word>? I. word II. words III. c22 A Ninguna B I y II unicamente D II y III unicamente E I, II y III 1 C I y III unicamente 4. >Que es cierto respecto a la vericacion estatica y la vericacion dinamica de tipos? I. En general los programas vericados estaticamente corren mas rapido que los vericados dinamicamente. II. La vericacion dinamica es mas util para encontrar errores que la estatica. III. La vericacion de tipos es parte del analisis semantico. A Ninguna B I y II C II D I y III E I, II y III 5. El analizador lexico de Pascal lee caracter por caracter, desde un cierto punto, hasta que se da cuenta que reconoce un \token". Supongamos que los \tokens" de Pascal son: identicadores, constantes, palabras clave (key words) y operadores. >Para cual de las siguientes secuencias de caracteres el analizador lexico de Pascal puede determinar que ha visto el \token" completo sin ver el siguiente caracter? I. II. 3:1416 III. while AI B II C I y II D I y III E II y III 6. >Cual de las siguientes caractersticas de un lenguaje requiere el uso de \stacks" (pilas) en lugar de manejo de variables de tipo estatico? A Parametros por referencia. B Funciones de valor entera. C Arreglos bidimensionales. D \goto's" arbitrarios. E Rutinas recursivas. 7. Dos estaciones de trabajo estan conectadas a una red local. Una de las estaciones tiene acceso a los archivos via red de un servidor de archivos, el tiempo promedio para accesar de esta manera a una pagina de un archivo es de 0.1 seg. La otra estacion de trabajo accesa los archivos de un disco local con el tiempo promedio de 0.05 seg. por pagina. Una compilacion particular requiere de 30 seg. de tiempo de procesamiento mas 200 accesos a paginas de un archivo. >Cual es la proporcion del tiempo total requerido para la compilacion por la primera estacion (sin disco) al tiempo total requerido por la segunda (con disco), suponiendo que el procesamiento no se traslapa con accesos a los archivos? A 1=1 B 5=4 C 5=3 D 1=2 E 3=1 2 8. Suponga que la proteccion de los archivos de un sistema esta representado por una matriz A de derechos de acceso, donde A(i j ) denota el conjunto de derechos que el usuario i tiene sobre el archivo j . Los usuarios estan divididos en grupos y pueden pertenecer a mas de un grupo. Existen tres modos distintos de accesar los archivos: (R)ead, (W)rite y (E)xecute. El sistema tiene tres tipos de archivos: Correo, Texto y Binario. Considere el siguiente conjunto de polticas de seguridad: a. Cada usuario tiene acceso R y W a todos los archivos que le pertenecen, mas acceso E a los archivos Binarios que le pertenecen. b. Usuarios en un grupo tiene acceso E a los archivos Binarios de todos los usuarios en ese mismo grupo, acceso R a los archivos Correo de todos los usuarios en ese mismo grupo, y R y W a los archivos Texto de todos los usuarios en ese mismo grupo. c. Un super usuario tiene acceso a todos los archivos del sistema como si fueran los archivos que le pertenecen. Mara, Juan y Alicia son tres usuarios del sistema. Mara y Alicia estan en el mismo grupo. Juan es el super usuario. >Cual de las siguientes frases es INCONSISTENTE con las polticas anteriores? A Juan tiene acceso W a los archivos Correo de Alicia. B Juan tiene acceso E a los archivos Correo de Alicia. C Mara tiene acceso R a los archivos Texto de Alicia. D Juan tiene acceso E a los archivos Binarios de Mara. E Mara tiene acceso R a los archivos Correo de Mara. 9. >Cuales de las siguientes frases son correctas? I. El cargador de arranque normalmente reside en ROM. II. El paso de parametros por valor no afecta a los valores del parametro formal en la subrutina invocada. III. Un ensamblador solo permite el uso de macros y un compilador solo permite el uso de subrutinas. A Ninguna B I y II C III DI E II y III 10. >Cuales de las siguientes frases describen funciones de un sistema operativo? I. Administracion de memoria y disco. II. Carga de programas compilados a memoria. III. Responde a interrupciones y \traps". A Ninguna B I y II C III 3 D II y III E I, II y III Estructuras de Datos y Programacion 1. Suponga que utilizamos una lista simplemente ligada para representar una pila e indicamos la base de la pila con un apuntador nulo y guardamos un apuntador al tope de la pila. >Cuanto tiempo se tardan las operaciones meter (push) y sacar (pop)? Suponga que la pila tiene en un momento dado n elementos. A meter es O(1), sacar es O(n). B meter es O(1), sacar es O(n2). C meter es O(n), sacar es O(n). D meter es O(1), sacar es O(1). E meter es O(log(n)), sacar es O(1). 2. >Que nodo esta fuera de lugar para que el arbol resultante sea un arbol binario de busqueda? Q ;; @@ ; @ M R ;@ ;@ ; @ ; @@ ; @ ; J NT X ; @@ ; ; @ V AJ K BM CT DR EX 3. Convertir de notacion inja a notacion posja la expresion: (A + B + C )=(D + E F ) A ABC + DEF +=+ B AB + C + DEF += C ABC + +DEF =+ D AB + C + DEF + = E ABC + D + EF += 4 4. En una arbol binario de busqueda balanceado por la altura, la diferencia entre las alturas de los subarboles derecho e izquierdo es 0 o 1. >Que es verdadero para un arbol de este tipo que tiene N nodos? I. La busqueda en el peor caso es proporcional al log(N ). II. La busqueda en el caso promedio es proporcional al log(N ). III. La busqueda en el mejor de los casos es proporcional al N . IV. La altura del arbol es logartmica en el numero de nodos. A I y III B II y III C II y IV D I, II y IV E I, III y IV 5. >Que tipo de arboles de busqueda estan mas orientados para trabajar en memoria secundaria y que particularmente emplean el concepto de pagina? A Arboles B B Arboles binarios C Arboles AVL D Arboles 2 ; 3 E Arboles de Human 5 6. Un \trie" es una clase de arbol que puede ser usado para represntar palabras (i.e., cadenas de caracteres arbitrariamente largas pero nitas) como sigue: 1. Cada nodo se etiqueta con un caracter. La raiz y todas las hojas tienen por etiqueta el smbolo . 2. Cada camino no vaco del \trie", desde la raiz, representa la cadena de caracteres de la secuencia encontrada en dicho camino. 3. Cada nodo tiene a lo mas una hoja entre sus hijos, cada hoja es el hijo mas a la izquierda de su padre, y cada nodo no-hoja aparece, de izquierda a derecha, en el orden alfabetico de su etiqueta. Dado el orden alfabetico para los caracteres, cada conjunto de palabras determina de forma unica un \trie". Por ejemplo, el \trie" para \a", \an", \at", \and" y \cat" se presenta abajo. * ; @@ ; ; @ a c ! ! @@ ! ! ;@ ; @ * ; @a @ n t @ ;@ @ @@ @@ ;; @@d t * * * * >Cuantos nodos, incluyendo los , hay en un \trie" para las palabras \do", \dog", \door" y \doors"? A8 B9 C 10 D 11 E 12 6 7. Considere el siguiente arbol binario: ($) aaaa aaa aaa aa (+) (*) ; @ ; @@ ; @ ; ; @ ; @@ ; @@ ; ; ; @ x ; ; ; y (*) ; ; ; x @ @@ z (+) @@ @y z $ denota exponenciacion. Si el arbol se recorre en preorden, >Cual de las expresiones siguientes se obtiene? A +x z$ + xy z B yz + x$ + xy z C $ + xyz +xyz D $ + x yz +xyz E Ninguna de las anteriores 8. Considere el siguiente codigo pseudo-Pascal: var i, j : integer procedure P(k, m : integer) begin k := k - m m := k + m k := m - k end i := 2 j := 3 P(i, j) Si los dos parametros de P se pasan por referencia, >Cuales son los valores de i y j al nal del fragmento de programa? A i = 0 j = 2 B i = 1 j = 5 C i = 2 j = 3 D i = 3 j = 2 E Ninguno de los anteriores. 7 9. Considere el siguiente codigo pseudo-Pascal: p:= 1 k := 0 while k < n do begin p := 2 * p k := k + 1 end Para el fragmento de programa anterior, que involucra a los enteros p, k y n, cual de las siguientes condiciones es invariante a iteraciones, i.e., que es verdadera al inicio de cada ejecucion de la iteracion y al nal de la ejecucion de la iteracion: A p=k+1 B p = (k + 1)2 C p = (k + 1)2 D p=2 E p = 2( +1) 10. >Cuantos renglones de salida produce el siguiente programa? k k k #include <stdio.h> main() { float sum = 0.0, j = 1.0, i = 2.0 while (i/j > 0.001) { j = j + j sum = sum + i/j printf(``%f\n'', sum) } } A 0-9 B 10-19 C 20-29 8 D 30-39 E Mas de 39 Matematicas para la Computacion 1. >Que propiedades cumple la relacion R denida sobre dos nodos x y de un arbol binario del siguiente modo: x esta relacionado con y si x es hijo o descendiente de y? I. Reexiva II. Simetrica III. Transitiva A I B II C III D II y III E I y III 2. >Cuales de los siguientes conjuntos de parejas (a b) representan a una funcion? I. f(;1 0) (1 0) (2 1) (1 1)g II. f(2 2) (1 1) (3 3) (0 0)g III. f(1 2) (2 3) (3 4) (4 5)g A I y II B II y III C I y III D Ninguno E I, II y III 3. >Cuales de las siguientes formas sentenciales son tautologicas? I. P :P II. (P Q) Q III. (P Q) P A I B II C III D Ninguna 9 E I, II y III 4. Aplicando la induccion diga cuales de los siguientes expresiones son verdaderas (n 2 N) : II. Pn2 < 2 I. i2 = ( +1)(6 +2) =1 III. 1| + 4 + 7 + :{z: : + (3n ; 2)} = 3 ;1 n n n n n i n n A Ninguna elementos B I y II n C I y III D II y III E I, II y III 5. >Cual es el mnimo de la funcion f (x1 x2) = x1 ; 2x2 sujeta a las restricciones: 8 > < > : A 0 B -2 C -25 x1 ; ;2 0 x2 2 x1 0 ? x2 2 D 2 E -5 6. Hay 5 amigos que deciden sentarse en la mesa redonda. Cada uno de ellos elige al azar una silla entre 5 sillas alrededor de la mesa. > Cual es la probabilidad de que 2 amigos, Carlos y Ricardo, sean vecinos? A 2 5 B 1 5 C 1 D 2:01 E 0:1 C 2 D 1 E no existe 2 2 7. >Cuanto vale lim ? !0 sin2 x x A 1 B 0 x 10 8. >Cuales de las siguientes funciones representan la solucion de la ecuacion diferencial y00 + 3y0 + 2y = 0 ? p I. x + 1 II. 3e; III. 2e;2 ; 4e; x x A I y II x B I y III C II y III D Ninguna E I, II y III 9. El conjunto de soluciones del siguiente sistema de ecuaciones 8 > < x+y+z =1 2x ; y + 2z = 0 > : 3x + 3z = 2 A Es un plano B Es vaco C Es una recta D Es un punto E Es nito 10. Sean A=f2 3 4g y B=f;1 0 1 2g dos conjuntos. >Cuantas funciones f : A B hay? A 34 B 43 C 3 D 4 11 E 34 ! Dise~no Logico y Arquitectura de Computadoras 1. Para la siguiente tabla de transicion encuentre las ecuaciones booleanas de f 1 y f 2 usando ip-ops tipo D. Estado Presente Entradas Estado Siguiente 0 0 0 0 0 0 1 1 f2 0 0 0 0 1 1 0 1 x 0 0 1 1 * * * * y 0 1 0 1 1 0 * * f1 0 1 0 1 0 0 0 1 A f1 = f1 f2y + f1 f20 x + f10 f20 y f2 S1 0 0 0 0 0 0 1 1 S2 1 1 1 1 0 0 0 1 D f1 = f1 f2 + f10 f2S1 + f1 f2x = f1 xy + f 0 y + f 0 f2 1 f2 1 0 0 1 0 1 0 0 Salidas f2 = f2 xy + f10 f20 xy0 + f10 f2 x0y 1 B f1 = f10 f20 y + f2 x0 y0 + f2 xy0 + f1f2 E f1 = f2 y + f1 x f2 = f10 x0y0 + f10 f20 xy + f10 f2 xy0 f2 = f1 f2 + f2 f10 C f1 = f10 f2y + f2 xy + f1f2 f2 = f1 x0y + f2xy0 + xy 2. Del problema anterior encuentre las ecuaciones boolenas de las salidas S1 S2. A S1 = f1 S2 = f10 f20 + f1 f2 D S1 = f1 f2 + y S2 = f1 f2 B S1 = f10 S2 = f1f2 + f1 f20 E S1 = f10 f20 + y S2 = f10 f2 C S1 = f1 x0 + f2y S2 = f1x + f2 3. Efectue la siguiente suma de numeros binarios de 8 bits usando complemento a dos: 0001 0001 + 1110 0111 dejando el resultado en decimal. A 240 B 112 C -9 D8 E -8 4. Cuantas lineas de un bus de direcciones de 16 bits se necesitan para direccionar una memoria de 4k? A 11 B 13 C 15 D 14 E 12 12 5. Un microprocesador responde a una atencion de interrupciones insertando en la pila no solamente la direccion de regreso sino tambien el contenido del registro de estados del microprocesador. Si el apuntador de pila tiene el valor F8F0 antes de que el microprocesador sea interrumpido, cual sera su valor despues de la interrupcion? A F8F2 B F8EE C F8F1 D F8EF E F8ED 6. Un ALU tiene dos registros A y B de 8 bits. El registro A se modica de la siguiente forma: A = A OPER B en donde OPER puede ser una de las siguientes operaciones: AND, OR, XOR, ADD, SUB. A tiene el valor 1101 1001. Cual debe ser la operacion que debe ejecutar el ALU para que A tenga el valor 1110 0100 despues de la operacion? A AND B SUB C XOR D ADD E OR 7. Para el problema anterior, cual debe ser el valor de B?: A 1110 0100 B 0001 0111 C 0000 1011 D 1101 1001 E 1000 1000 8. Cual es la diferencia principal entre un microprocesador RISC y un CISC? A el numero de ALU's internos B su capacidad de direccionamiento de memoria C su velocidad D su tama~no E el numero de instrucciones que pueden ejecutar 9. Acceso directo a memoria se reere a: A La habilidad de un microprocesador para leer o escribir datos en cualquier localidad de memoria. B La habilidad de un microprocesador para leer o escribir datos en cualquier localidad de memoria a la misma velocidad. C Dispositivos de entrada/salida transeran informacion directamente a la memoria sin intervencion del microprocesador. D Una memoria especialmente dise~nada para hacer una transferencia rapida de datos. E El microprocesador es el unico que directamente accesa la memoria. 10. Encuentre la representacion en complemento a dos del siguiente numero en hexadecimal: F3A1. A 0A5E B FA5E C 0A57 D 0A5E E F321 13 Algoritmos, Automatas y Lenguajes Formales 1. La denicion de algoritmo NO requiere que: A Su ejecucion termine despues de ejecutar un numero nito de pasos B Cada instruccion este claramente especicada y ejecute en tiempo nito C Siempre encuentre la respuesta correcta D El tiempo de ejecucion de cada instruccion este acotado por una funcion lineal dada E Todas las anteriores 2. La siguiente maquina de Turing tiene como proposito sacar una copia de una cadena binaria, i.e., de una conguracion inicial: ...###10001###... se desea pasar a la conguracion nal: ...###10001#10001##... La idea es: para cada dgito a copiar, se marca este con una \x" o \y", se recorre la cinta hasta encontrar espacio en el extremo derecho, se copia el dgito, se regresa a la izquierda y se restituye el dgito original. Por ejemplo: ...###10001###... ...###x0001###... ...###x0001#1#... ...###10001#1#... ...###1y001#1#... ... El programa es el siguiente (la cabeza se encuentra leyendo el digito mas signicativo al inicio de la operacion), con q1 como estado inicial, y q9 nal: Estado Leyendo Smbolo 0 1 x y # q1 (q2,x,R) (q4,y,R) (q8,#,R) q2 (q2,0,R) (q2,1,R) (q3,#,R) q3 (q3,0,R) (q3,1,R) (q6,0,L) q4 (q4,0,R) (q4,1,R) (q5,#,R) q5 (q5,0,R) (q5,1,R) (q6,1,L) q6 (q6,0,L) (q6,1,L) (q7,#,L) q7 (q7,0,L) (q7,1,L) ? (q1,1,R) q8 (q8,0,L) (q8,1,L) (q9,#,L) q9 14 En la tabla anterior, la notacion (q s D) indica que \estando en un estado q, graba el smbolo s en la posicion en la que esta la cabeza, y despues mueve la cabeza en la direccion indicada por D, ya sea a la izquierda (D = L) o a la derecha (D = R)". Identicar la transicion faltante de q7 leyendo una \x": A (q1,0,R) B (q2,0,R) C (q1,1,R) D (q1,1,L) E Ninguna de las anteriores 3. Para n sucientemente grande, la notacion g(n) = O(f (n)) para indicar la complejidad de g(n) establece que: A Las medidas de complejidad de g y f son equivalentes B Existe una constante k tal que jf (n)j k jg(n)j C Existe una constante k tal que jg(n)j k jf (n)j D Existe una constante k tal que g(n) f (n) k E Ninguna de las anteriores 4. Para cualquier expresion regular R: A Es posible a veces construir un aceptador nito M tal que L(M) = L(R) B Es siempre posible construir un aceptador nito M tal que L(M) = L(R) C Es imposible construir un aceptador nito M tal que L(M) = L(R) D Es siempre posible construir un aceptador nito M tal que L(M) = L(R), aunque el aceptador tenga que ser no determinstico E Ninguna de las anteriores 15 5. Dado el siguiente algoritmo para ordenar un vector a de N elementos de tipo T: procedure ordena( T aN] ) begin int i, j, min for i:= 1 to N-1 begin min:= i for j:= i+1 to N begin if (aj] < amin]) then min:= j end intercambia(a,min,j) end end y suponiendo que el procedimiento intercambia ejecuta en tiempo constante, su complejidad puede expresarse como: A O(N ) B O(i + j ) C O(N 2) D O(N 3) E Ninguna de las anteriores 6. El algoritmo de ordenamiento de un vector a de longitud n conocido como bucket sort tiene la forma siguiente (donde B es un vector auxiliar de listas ligadas): 1. 2. 3. 4. 5. 6. 7. int i, n n:= longitud(a) for i:= 1 to n inserta Ai] en la lista Bfloor(n.Ai])] for i:= 0 to n-1 ordena lista Bi] con metodo de insercion concatena listas B0], B1], ..., Bn-1] Si sabemos que el ciclo de los pasos 3,4 ejecuta en promedio en tiempo n, que el paso 7 puede hacerse tambien en tiempo lineal, y que el algoritmo completo ejecuta en promedio en tiempo lineal, >que podemos concluir respecto al paso 6? A Que debe ejecutarse en promedio en tiempo constante B Que debe ejecutarse en promedio en tiempo cuadratico C Que debe ejecutarse en promedio en tiempo lineal D Que debe ejecutarse en promedio en tiempo lg n E No se puede concluir nada 16 7. Dadas las operaciones de: (i) Union, (ii) Concatenacion, y (iii) Interseccion, la clase de los lenguajes libres de contexto es cerrada bajo: A (i), (ii), y (iii) B (i) y (ii) C (iii) D (ii) y (iii) E Ninguna de las anteriores 8. La gramatica libre de contexto (el signo `' representa a la cadena vaca): S ;! AB ja A ;! a B ;! es equivalente a la gramatica con producciones: A B C D E S ;! AB A ;! a B ;! b S ;! a S ;! A S ;! A A ;! ajB B ;! aA Ninguna de las anteriores 9. Los lenguajes sensibles al contexto pueden ser caracterizados como aquellos que: A Son reconocibles por un automata de pila (pushdown automaton) B Requieren de una maquina de Turing no determinstica con cinta de longitud limitada (linear bounded automaton) para su reconocimiento C Estan formados por gramaticas que tienen reglas de la forma X ;! , para X no terminal y un cadena de terminales y no terminales D Requieren de una maquina de Turing no determinstica sin limitaciones en la cinta para su reconocimiento E Ninguna de las anteriores 10. La gramatica lineal: $ ;! A A ;! 1B B ;! 0B j0C C ;! 0B j1C j1 17 '$ - &% '$ -# # ? -# &% "! 6 "! "! '$ '$ '$ &% &% &% # # # # ? - 6 "! "! "! "! '$ '$ '$ '$ &% &% &% &% corresponde al automata (ver siguiente gura): 0 A A 1 1 B 0 0 1 A 1 B 1 C D 0 1 C A 0 0 B 1 0 D A 1 1 0 B A 1 B 1 C 0 E C D 1 0 1 C 0 18 D Se lista una serie de libros que los estudiantes pueden usar como referencia. Desde luego, no se presupone que los estudiantes hayan leido todos los libros, ni que conocen todo el material a detalle. Se pretende mas bien que los alumnos tengan una gama amplia de referencias que consultar. Lenguajes, Compiladores y Sistemas Operativos. Temario. 1. 2. 3. 4. Bibliografa. { John J. Donovan, Systems Programming, Mc Graw Hill, 1981. { Wirth Nicklaus, Algoritmos y Estructuras de Datos, Prentice Hall, 1986. Respuestas: 1 - D, 2 - D, 3 - D, 4 - D, 5 - A, 6 - E, 7 - B, 8 - B, 9 - D, 10 - E. Estructuras de Datos y Programacion. Temario. 1. 2. 3. 4. 5. 6. 7. Lenguaje de maquina. Ensambladores, Macros, Ligadores, Compiladores, Interpretes. Sistemas operativos. Denicion formal de la gramatica de un lenguaje de programacion. Conceptos de tipos de datos abstractos. Estructuras de datos lineales (listas, pilas, colas,etc.) Estructuras arborescentes. Tablas de dispersion. Algoritmos de ordenamiento y busqueda. Recursion. Programacion. Bibliografa. { Alfred V. Aho, John E. Hopcroft, y Jerey D. Ullman. The Design and Analysis of Computer Algorithms. Addison-Wesley. 1974. { Nicklaus Wirth, Algoritmos y Estructuras de Datos, Prentice Hall, 1986. Respuestas: 1 - D, 2 - C, 3 - B, 4 - D, 5 - A, 6 - D, 7 - D, 8 - D, 9 - D, 10 - B. 19 Matematicas para la Computacion. Temario. 1. 2. 3. 4. 5. 6. Algebra. Logica Matematica. Geometa Analtica. Caculo Diferencia e Integral. Ecuaciones Diferenciales. Probabilidad y Estadstica. Bibliografa. { Copi I. M. Logica Simbolica, pp.1-50. { Swokowski E. W. Algebra Universitaria, Captulo 7. { Granero Rodrguez F. Algebra y Geometra Analtica, Captulos 1,2,4. { Stein S. K., Alonso Linares A., Calculo con Geometra Analtica, Captulo 2. { Rainville E. D., Bedient P.E. Ecuaciones Diferenciales, Captulos 5,6. { Lippman S. A. Elementos de Probabilidades y Estadstica, Captulo 1. Respuestas: 1 - C, 2 - B, 3 - C, 4 - D, 5 - E, 6 - A, 7 - C, 8 - C, 9 - B, 10 - B. 20 Dise~no Logico y Arquitectura de Computadoras Temario. 1. Fundamentos de Sistemas Digitales. (a) Operaciones Booleanas. (b) Simplicacion de Ecuaciones Booleanas. (c) Dise~no de Sistemas Secuenciales. (d) Dise~no B'asico de Componentes Principales (ALU's, CPU's, etc). 2. Codigos de Representacion (binario, octal, hexadecimal,etc). (a) Operaciones Basicas (ADD, OR, XOR, Complementos, etc). Bibliografa. { M. Morris Mano, Logica Digital y Dise~no de Computadoras, Prentice Hall His- panoaamericana, 1993. { Ronald J. Tocci, Frank J. Ambrosio, Lester P. Laskowski, Microprocessors and microcomputers : hardware and software, Prentice Hall, 1997. { Hayes, John Patrick, Digital system design and microprocessors, McGraw-Hill, 1984. Respuestas: 1 - C, 2 - A, 3 - E, 4 - E, 5 - B, 6 - D, 7 - C, 8 - E, 9 - C, 10 - C. 21 Algoritmos, Automatas y Lenguajes Formales. Temario. 1. Algoritmos (a) Problemas computables y no computables (intractable problems) (b) Maquinas de Turing (c) Clases de Complejidad (de lineal a NP) (d) Notacion de \O mayuscula" (big O) (e) Analisis practico de complejidad de algoritmos (f) Complejidad de problemas clasicos de ordenamiento y busqueda 2. Automatas y Lenguajes Formales (a) Automatas nitos y sus lenguajes (b) Automatas de pila (pushdown) y sus lenguajes (c) Aplicaciones (d) Jeraqua de Chomsky (e) Cerradura y complejidad de operaciones sobre gramaticas (union, interseccion, reconocimiento, etc.) Bibliografa. { Alfred V. Aho, John E. Hopcroft, y Jerey D. Ullman. The Design and Analysis of Computer Algorithms. Addison-Wesley. 1974. Para secciones 1.a, 1.b, 1.c, 1.e, 1.f { Thomas H. Cormen, Charles E. Leiserson, y Ronald L. Rivest. Introduction to Algorithms. MIT Press. 1990. Para secciones 1.c, 1.d, 1.e, 1.f { John E. Hopcroft y Jerey D. Ullman. Introduction to Automata Theory, Languages, and Computation. Addison-Wesley. 1979. Para seccion 2 { Robert Sedgewick. Algorithms in C++. Addison-Wesley. 1992. Para secciones 1.d, 1.e Respuestas: 1 - D, 2 - A, 3 - C, 4 - B, 5 - C, 6 - A, 7 - B, 8 - B, 9 - B, 10 - D. 22