Análisis Sintáctico
Análisis Sintáctico
Análisis Sintáctico
Un analizador sintáctico o parser (viene del inglés parse, analiza una cadena o texto en
componentes sintácticos lógicos).
La tarea del analizador es, en este caso, la descomposición y transformación de las entradas en un
formato utilizable para su posterior procesamiento.
¿Cómo Funciona?
Para analizar un texto, los analizadores
suelen utilizar un analizador léxico
separado (llamado lexer), que
descompone los datos de entrada en
fichas (símbolos de entrada como
palabras). Los Lexers son por lo
general máquinas de finitas, que
siguen la gramática regular y por lo
tanto aseguran un desglose adecuado.
El analizador actual maneja la gramática de los datos de entrada, realiza un análisis sintáctico de
éstos y como regla general crea un árbol de sintaxis (árbol de análisis).
Los tokens obtenidos de esta manera sirven como caracteres de entrada para el analizador
sintáctico.
Tipos de Analizadores para
Gramática
• Universales
• Descendentes
• Ascendentes
Representación de Gramáticas
Construcciones que empiezan con palabras clave
como while o int .
Las palabras clave son guías de la elección de
la producción gramatical que debe aplicarse
para hacer que coincida con la entrada.
Por lo tanto, se concentran en expresiones, que
representan un reto debido a la asociatividad y
la precedencia de operadores.
Ejemplo:
E→ E + E | E * E | ( E ) | id (4.3)