¿Cuál es la diferencia entre escanear y analizar?

Tabla de contenido:

Anonim

los diferencia principal entre el escaneo y el análisis es que el escaneo es el proceso de leer el código fuente un carácter a la vez de una manera metódica para convertirlos en tokens mientras que el análisis es el proceso de tomar los tokens y generar un árbol de análisis como salida.

Generalmente, un compilador es un programa de software que es capaz de convertir el código fuente en código de máquina para que la computadora pueda ejecutar ese código de máquina. El compilador pasa por varias fases para compilar un programa. El escaneo y el análisis son dos actividades que ocurren durante este proceso de compilación. En general, la exploración se produce en la fase de análisis léxico, mientras que el análisis se produce en la fase de análisis de sintaxis. Además, el analizador léxico realiza un análisis mientras que el analizador realiza un análisis sintáctico.

Análisis léxico, análisis, árbol de análisis, análisis, análisis de sintaxis

¿Qué es el escaneo?

La primera fase de la compilación es el análisis léxico. El analizador léxico realiza esta tarea. Toma el código fuente como entrada. El analizador léxico lee el programa fuente un carácter a la vez y luego lo convierte en tokens significativos. El proceso de leer el código fuente metódicamente se llama escaneo. En este proceso, el analizador léxico considera información específica del código fuente.

¿Qué es el análisis?

Los tokens generados a partir del análisis léxico pasan a la siguiente fase, que es el análisis de sintaxis. El analizador realiza esta tarea. Toma los tokens como entrada y genera un árbol de análisis como salida. Por lo tanto, este proceso se denomina análisis sintáctico. Además, el analizador verifica si la expresión hecha por los tokens es sintácticamente correcta o no.

Diferencia entre escaneo y análisis

Definición

El escaneo es el proceso de leer el código fuente como un flujo de caracteres para convertirlos en lexemas o tokens significativos. Por el contrario, el análisis sintáctico es el proceso de tomar los tokens generados en la fase de análisis léxico y transformarlos en un árbol de análisis sintáctico. Por lo tanto, esta es la principal diferencia entre escanear y analizar.

Interpretado por

Además, el analizador léxico realiza un análisis mientras que el analizador realiza el análisis.

Fase asociada de la compilación

Además, el escaneo ocurre durante el análisis léxico, mientras que el análisis sintáctico ocurre durante el análisis de sintaxis. Por lo tanto, esta es otra diferencia entre escanear y analizar.

Ocurrencia

Conclusión

En general, un compilador es un programa de software que se encarga de convertir el código fuente en código de máquina equivalente. Pasa por varias fases para realizar esta tarea. Aquí, el escaneo y el análisis son dos actividades que ocurren durante este proceso de compilación. Sin embargo, la principal diferencia entre escanear y analizar es que escanear es el proceso de leer el código fuente un carácter a la vez de una manera metódica para convertirlos en tokens mientras que el análisis es el proceso de tomar los tokens y generar un árbol de análisis como el producción.

Referencias:

1. "Fases del compilador: Javatpoint". Www.javatpoint.com, disponible aquí.

Imagen de cortesía:

1. "Un compilador ideal para múltiples idiomas y múltiples destinos" Por I, Surachit (CC BY-SA 3.0) a través de Commons Wikimedia

¿Cuál es la diferencia entre escanear y analizar?