Análisis Sintáctico Teoría de Autómatas y Lenguajes

15 12 2010

Análisis Sintáctico

Todo lenguaje de programación tiene reglas que describen la estructura sintáctica de programas bien formados.

Las gramáticas ofrecen ventajas significativas a los diseñadores de lenguajes y a los desarrolladores de compiladores.

  • Las gramáticas son especificaciones sintácticas y precisas de lenguajes de programación.
  • A partir de una gramática se puede generar automáticamente un analizador sintáctico.
  • El proceso de construcción puede llevar a descubrir ambigüedades.
  • Una gramática proporciona una estructura a un lenguaje de programación, siendo más fácil generar código y detectar errores.
  • Es más fácil ampliar/modificar el lenguaje si está descrito con una gramática.

¿Qué es el analizador sintáctico?

Es la fase del analizador que se encarga de chequear el texto de entrada en base a una gramática dada. Y en caso de que el programa de entrada sea válido, suministra el árbol sintáctico que lo reconoce.

En teoría, se supone que la salida del analizador sintáctico es alguna representación del árbol sintáctico que reconoce la secuencia de tokens suministrada por el analizador léxico.

En la práctica, el analizador sintáctico también hace:

  • Acceder a la tabla de símbolos (para hacer parte del trabajo del analizador semántico).
  • Chequeo de tipos ( del analizador semántico).
  • Generar código intermedio.
  • Generar errores cuando se producen.

En definitiva, realiza casi todas las operaciones de la compilación. Este método de trabajo da lugar a los métodos de compilación dirigidos por sintaxis.

Tipos de Análisis

De la forma de construir el árbol sintáctico se desprenden dos tipos o clases de analizadores sintácticos. Pueden ser descendentes o ascendentes.

  • Descendentes : Parten del axioma inicial, y van efectuando derivaciones a izquierda hasta obtener la secuencia de derivaciones que reconoce a la sentencia.

Pueden ser:

  1. Con retroceso.
  2. Con recursión.
  3. LL(1)

  • Ascendentes: Parten de la sentencia de entrada, y van aplicando reglas de producción hacia atrás (desde el consecuente hasta el antecedente), hasta llegar al axioma inicial.

Pueden ser:

  1. Con retroceso.
  2. LR(1)

Información Adicional:

Realizados por: María del Mar Aguilera Sierra y Sergio Gálvez Rojas

EJEMPLOS

Autor: Juan A. Botía Blaya

Más…..

Análisis Sintáctico Teoría de Autómatas y Lenguajes.


Acciones

Information

One response

11 09 2014
ruben

pasame tu face😛

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s




A %d blogueros les gusta esto: