Preguntas Compiladores
Kimi_Martz31 de Marzo de 2014
2.260 Palabras (10 Páginas)912 Visitas
1. Es un programa que puede leer un programa en un leguaje y traducirlo en un programa equivalente en otro lenguaje: compilador
2. Nos da la apariencia de ejecutar directamente las operaciones especificadas en el programa origen con las entradas proporcionadas por el usuario: interprete
3. Cuáles son los procesadores de lenguaje:
a. Programa fuente
b. Traductor
c. Programa intermedio máquina virtual salida
d. Entrada máquina virtual salida
4. Cuál es la estructura de un compilador
5. Es el proceso de caracteres que componen el programa fuente y los agrupa en secuencias significativas conocidas como lexemas: analizador léxico
6. Utiliza los primeros componentes de los tokens producidos por el analizador léxico para crear una representación intermedia en forma de árbol que describa la estructura gramatical del flujo de tokens: análisis sintáctico
7. Proceso que utiliza el árbol sintáctico y la información en la tabla de símbolo para comprobar la consistencia del programa fuente: análisis semántico
8. Es el proceso de traducir un programa fuente a código destino por lo general se utiliza durante el análisis sintáctico y semántico: generación de código intermedio.
9. Proceso que trata de mejorar el código intermedio, de manera que se produzca un mejor código destino. Optimización de código.
10. Proceso que recibe como entrada una representación intermedia del programa fuente y la asigna al lenguaje destino. Generación de código.
11. Cuál es la función principal de un compilador: registrar los nombres de las variables que se utilizan en el programa fuente y recolectar la información.
12. Cuales son las herramientas de construcción de compiladores de uso común:
a. Generador de analizadores sintácticos (parsers)
b. Generadores de escáneres
c. Motores de traducción orientados a la sintaxis
d. Generadores de generadores de código
e. Motores de análisis de flujos de datos
f. Kits
13. Se refiere a los intentos que realiza un compilador por producir código que sea más eficiente que el código obvio: optimización de código
14. Las optimizaciones de compiladores deben cumplir con los siguientes objetivos de diseño
a. Debe ser correcta
b. Debe mejorar el rendimiento
c. Tiempo de compilación razonable
d. Esfuerzo de ingeniería debe ser administrable
15. ¿Cuál es uno de los mejores ejemplos sobre como los compiladores influenciaron el diseño de la arquitectura de computadoras? RISC, computadora con conjunto reducido de instrucciones.
16. ¿Cuáles son las aplicaciones más importantes de las técnicas de traducción de programas?
a. Traducción binaria
b. Síntesis de hardware
c. Interpretación de consulta de datos
d. simulación compilada.
17. ¿Cuál es la técnica de traducción de programas que permite a una máquina ejecutar los programas que originalmente que originalmente eran compiladas para otro conjunto de instrucciones? Traducción Binaria
18. ¿Cuál es la técnica de traducción de programas que traduce las descripciones RTL de manera automática en compuertas? Síntesis de Hardware
19. ¿Es una técnica utilizada en muchas disciplinas científicas y de ingeniería para comprender un fenómeno? Simulación
20. Es una técnica efectiva y bien establecida para captar las inconsistencias en los programas. Comprobación de tipos
21. ¿Qué es un analizador Léxico?
Permite que un traductor maneje instrucciones de varios caracteres como identificadores que se escriben como secuencia de caracteres, pero se tratan como unidades conocidas como tókens durante el análisis sintáctico.
22. ¿Cuáles son los 4 componentes de una gramática libre de contexto?
- Conjunto de símbolos terminales
- Conjunto de símbolos no terminales
- Conjunto de producciones
- Designación de una de los no terminales como símbolo inicial.
23. ¿Qué partes conforman un tóken?
- El nombre del tóken
- Valor de atributo
24. ¿Cuál es la función de un analizador léxico?
Lee los caracteres del programa fuente, los agrupa en unidades con significado léxico llamadas Lexemas.
25. ¿En qué consiste un análisis sintáctico?
Es el problema de tomar una cadena de terminales y averiguar cómo derivarla a partir del símbolo inicial de la gramática y si no puede derivarse a partir de éste símbolo entonces hay que reportar los errores en la cadena.
26. ¿Qué otro nombre recibe el analizador Sintáctico
Parsing
27. ¿En qué consiste un árbol de análisis sintáctico?
Muestra en forma gráfica la manera en que el símbolo inicial de una gramática deriva a una cadena en el lenguaje.
28. ¿Qué es ambigüedad?
Es cuando una gramática puede tener más de un árbol de análisis sintáctico que genere una cadena dada de terminales.
29. ¿Cómo se realiza la traducción orientada a la sintaxis?
Se realiza uniendo reglas o fragmentos de un programa a las producciones de una gramática.
30. ¿Qué es un Atributo?
Es cualquier cantidad asociada con una construcción de programación.
31. ¿Para qué se utilizan los recorridos de árboles?
Para describir la evaluación de los atributos y especificar la ejecución de los fragmentos de código en un esquema de traducción.
32. ¿Qué es un recorrido de tipo Primero en Profundidad?
Empieza en la raíz y visita en forma recursiva los hijos de cada nodo en cualquier orden.
33. ¿Qué es un análisis sintáctico?
Es el proceso de determinar cómo puede generarse una cadena de terminales mediante una gramática.
34. ¿Función de los recorridos Pre-orden y post-orden?
Definen los ordenamientos correspondientes en los nodos con base en el momento en que se va a realizar una acción en el nodo.
35. ¿Qué es una tabla de símbolos? Son estructura de datos que utilizan los compiladores para guardar información acerca de las construcciones de un programa fuente.
36. ¿Qué tipo de autómata no tiene restricciones en cuanto a las etiquetas de sus líneas. Un símbolo puede etiquetar a varias líneas que surgen del mismo estado, y E, la cadena vacía, es una posible etiqueta?
Autómatas finitos no deterministas (AFN)
37. Son los autómatas que tienen, para cada estado, y para cada símbolo de su alfabeto de entrada, exactamente una línea con ese símbolo que sale de ese estado.
Autómatas finitos deterministas (AFD)
38. En qué consiste la quíntupla de un autómata finito.
• Un conjunto finito de estados S.
• Un conjunto de símbolos de entrada ∑, el alfabeto de entrada. Suponemos que E, que representa a la cadena vacía, nunca será miembro de ∑.
• Una función de transición que proporciona, para cada estado y para cada símbolo en ∑ U {e}, un conjunto de estados siguientes.
• Un estado s0 de S, que se distingue como el estado inicial
• Un conjunto de estados F, un subconjunto de S, que se distinguen como los estados aceptantes (o estados finales).
39. ¿Cómo se llama el conjunto de cadenas que etiquetan cierto camino, del estado inicial a un estado de aceptación? Lenguaje definido (o aceptado) por un A F N.
40. ¿Cómo se llama la notación de elección para describir analizadores léxicos y demás software de procesamiento de patrones? La expresión regular.
41. Está orientado a la sintaxis, ya que recorre en forma recursiva hacia arriba el árbol sintáctico para la expresión regular. El algoritmo.
42. Es una representación abstracta de un algoritmo para reconocer las cadenas de cierto lenguaje.
Autómata finito no determinista
43. Es un algoritmo simple y concreto para reconocer cadenas.
Autómata finito determinista.
44. ¿Qué es un programa en Lex?
Es el que se convierte en una tabla de transición y en acciones, para que las utilice un simulador de autómatas finitos
45. Los componentes de un programa Lex son:
• Una tabla de transición para el autómata.
• Las funciones que se pasan directamente a través de Lex a la salida
• Las acciones del programa de entrada, que aparece como fragmentos de código que el simulador del autómata debe invocar en el momento apropiado.
46. ¿cómo podemos representar una expresión
...