Académique Documents
Professionnel Documents
Culture Documents
La clase de estructuras reconocible por las gramáticas libres de contexto se incrementa de manera
importante en relación con las de las expresiones regulares. Los algoritmos empleados para
reconocer estas estructuras también difieren mucho de los algoritmos de análisis léxico, ya que
deben utilizar llamadas recursivas o una pila de análisis sintáctico explícitamente admi- nistrada.
Las estructuras de datos utilizadas para representar la estructura sintáctica de un lenguaje ahora
también deben ser recursivas en lugar de lineales (como lo son para lexemas y tokens). La
estructura básica empleadaes por lo regular alguna clase de árbol, que se conoce como árbot de
análisis gramatical o árbol sintáctico.
La tarea del analizador sintáctico es determinar la estructura sintáctica de un programa a par- tir
de los tokens producidos por el analizador léxico y, ya sea de niaiiera explícita o implí- cita,
constniir un árbol de análisis gramatical o árbol sintáctico que represente esta cstruc- tura. De este
modo, se puede ver el analizador sintáctico como una función que toma como su entrada la
secuencia de tokens producidos por el analizador Iéxico y que produce como su salida el &bol
sintáctico
Una gramática libre de coiltexto es una especificacióri para La estructnr;~ sint;ii~tica de ~iri
lenguaje de programaci6n. liria cspecil'icación así es muy sirnilar a la especificacióri de la
estritcctira léxica de un lenguaje utilizniido expresiones regulares, excepto que irm yrariiitica libre
de coritexto involucran reglas de recursividad. Como ejemplo de ~jecncióri utilizarertios
expresiones aritméticas simples de enteros con operaciones (la suma, resta y multiplicación. Estas
expresiones se pueden dar mediante la gramática siguiente: