Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
1. (4 puntos) Utilice la gramtica G para realizar el anlisis sintctico descendente utilizando el algoritmo Earley, de la siguiente cadena E y diga si es sintcticamente correcta o no: E={ id * id + (id) } G: {(E,T, F), (+, *, (, ), id), E, P} P= { 1. E E + T 2. E T 3. T T * F 4. T F 5. F ( E ) 6. F id } 2. (6 puntos) Verificacin semntica. En la siguiente gramtica actualizada del punto 1, P= { 1. E E + T 2. E T 3. T T * F 4. T F 5. F ( E ) 6. F id : T 7. T int | real } a) (3 puntos) Agregue las reglas semnticas para verificacin de tipos. Previamente indique el o los atributos y la(s) accin(es) semntica que utilizar. b) (3 puntos) Dibuje el rbol anotado del anlisis sintctico del punto 1, indicando su tipo de datos en cada uno de los nodos del rbol. 3. (6 puntos) Escriba el cdigo fuente en C++ de la suma de N nmeros enteros pares, Y traducir el cdigo fuente a cdigo de tres direcciones. 4. (4 puntos) Ejercicio LR, realizado en clase.