Analizador sintáctico

Fiabilidad

¿Qué significa analizador sintáctico?

Un analizador sintáctico es la parte de un compilador que divide el código fuente en pequeñas secciones de cadenas de caracteres llamadas tokens.

El término tiene sus raíces en la lingüística. En lingüística, el análisis sintáctico consiste en diagramar físicamente la estructura subyacente de una frase. El objetivo es ayudar al alumno a comprender el contexto de cada elemento de la frase y su relación con el significado de la misma.

En informática, los analizadores sintácticos crean diagramas lógicos llamados árboles. El propósito es ayudar al compilador a comprender el contexto de cada token y su relación con la estructura subyacente del código fuente.

Los analizadores sintácticos se utilizan ampliamente en las siguientes tecnologías:

  • Java y otros lenguajes de programación.
  • HTML y XML.
  • Lenguajes de bases de datos, como SQL.
  • Lenguajes de modelado, como el lenguaje de modelado de realidad virtual (VRML).
  • Lenguajes de scripting, como Javascript.
  • Protocolos, como HTTP.

Definición de analizador sintáctico

El proceso técnico de análisis sintáctico consta de tres etapas:

  1. Análisis léxico: produce tokens a partir de un flujo de caracteres de entrada. Un token es la unidad más pequeña de un lenguaje de programación que posee algún significado (como +, -, *, «función» o «nuevo» en JavaScript).
  2. Análisis sintáctico: comprueba si los tokens generados forman una expresión con sentido.
  3. Análisis semántico: utiliza árboles sintácticos y tablas de búsqueda de símbolos para determinar si los tokens generados son semánticamente coherentes con un lenguaje de programación concreto.

El análisis sintáctico puede realizarse de forma descendente o ascendente.

  • Análisis sintáctico descendente: El análisis sintáctico comienza con el símbolo de inicio y los árboles se construyen desde la raíz hasta las hojas. El análisis sintáctico descendente también se denomina análisis sintáctico predictivo o recursivo.
  • Análisis sintáctico ascendente: Los árboles se construyen de las hojas a la raíz y terminan con el símbolo de inicio. Este tipo de análisis sintáctico también se conoce como análisis shift-reduce.

Temas relacionados

Margaret Rouse
Technology expert
Margaret Rouse
Experta en tecnología

Margaret Rouse es una galardonada escritora técnica y profesora conocida por su habilidad para explicar temas técnicos complejos a una audiencia de negocios no técnica. Durante los últimos veinte años, sus explicaciones han aparecido en sitios web de TechTarget y ha sido citada como autoridad en artículos del New York Times, Time Magazine, USA Today, ZDNet, PC Magazine y Discovery Magazine. La idea de diversión de Margaret es ayudar a profesionales de TI y negocios a aprender a hablar los idiomas altamente especializados de cada uno. Si tienes una sugerencia para una nueva definición o cómo mejorar una explicación técnica,…