Diferencia entre compilador y depurador

1. Compilador : el compilador, como sugiere su nombre, es un proceso que se utiliza para convertir código en instrucciones de máquina. Simplemente traduce el código fuente del lenguaje de programación de alto nivel al lenguaje de máquina de bajo nivel. Es básicamente un software complejo que realiza tanto la optimización como la generación de … Continue reading «Diferencia entre compilador y depurador»

Organización de almacenamiento en tiempo de ejecución

El entorno de tiempo de ejecución es la estructura de los registros y la memoria de las computadoras de destino que sirve para administrar la memoria y mantener la información necesaria para guiar el proceso de ejecución de un programa. Tipos de entornos de tiempo de ejecución: Completamente estático: el entorno de tiempo de ejecución … Continue reading «Organización de almacenamiento en tiempo de ejecución»

Traducción dirigida por la sintaxis en el diseño del compilador

Parser usa un CFG (Gramática libre de contexto) para validar la string de entrada y generar resultados para la siguiente fase del compilador. La salida podría ser un árbol de análisis o un árbol de sintaxis abstracta. Ahora, para intercalar el análisis semántico con la fase de análisis de sintaxis del compilador, usamos la traducción … Continue reading «Traducción dirigida por la sintaxis en el diseño del compilador»

SEGUIR establecido en análisis de sintaxis – Part 1

Hemos discutido los siguientes temas sobre el análisis de sintaxis.  Introducción al análisis de sintaxis  ¿Por qué PRIMERO y SEGUIR?  FIRST Conjunto en análisis de sintaxis  En esta publicación, se analiza el conjunto FOLLOW.  Follow(X) para ser el conjunto de terminales que pueden aparecer inmediatamente a la derecha de Non-Terminal X en alguna forma de … Continue reading «SEGUIR establecido en análisis de sintaxis – Part 1»

Operador de gramática y analizador de precedencia en TOC – Part 1

Una gramática que se utiliza para definir operadores matemáticos se denomina gramática de operadores o gramática de precedencia de operadores . Tales gramáticas tienen la restricción de que ninguna producción tiene un lado derecho vacío (producciones nulas) o dos no terminales adyacentes en su lado derecho. Ejemplos: este es un ejemplo de gramática de operadores: … Continue reading «Operador de gramática y analizador de precedencia en TOC – Part 1»

Programa Lex para imprimir el total de caracteres, espacios en blanco, tabulaciones en el archivo de entrada dado

Lex es un programa informático que genera analizadores léxicos. Lex lee un flujo de entrada que especifica el analizador léxico y genera el código fuente que implementa el lexer en el lenguaje de programación C. Los comandos para ejecutar el programa lex son: lex abc.l (abc is the file name) cc lex.yy.c -lfl ./a.out Veamos … Continue reading «Programa Lex para imprimir el total de caracteres, espacios en blanco, tabulaciones en el archivo de entrada dado»

Función del analizador de precedencia de operadores

En esto, cubriremos la descripción general del analizador de precedencia de operadores y nos centraremos principalmente en el papel del analizador de precedencia de operadores. Y también cubrirá el algoritmo para la construcción de la función de precedencia y finalmente discutirá la recuperación de errores en el análisis de precedencia de operadores. Discutámoslo uno por … Continue reading «Función del analizador de precedencia de operadores»

Programa Lex para verificar si la entrada es un dígito o no

Lex es un programa informático que genera analizadores léxicos. Lex lee un flujo de entrada que especifica el analizador léxico y genera el código fuente que implementa el lexer en el lenguaje de programación C. Requisito previo : Flex (generador de analizador léxico rápido) . Dada una entrada, la tarea es verificar si la entrada … Continue reading «Programa Lex para verificar si la entrada es un dígito o no»

Programa Lex para contar palabras menores de 10 y mayores de 5

Problema: Escriba un programa Lex para contar palabras menores de 10 y mayores de 5. Explicación:  Lex es un programa de computadora que genera analizadores léxicos. Lex lee un flujo de entrada que especifica el analizador léxico y genera el código fuente que implementa el lexer en el lenguaje de programación C. Los comandos para … Continue reading «Programa Lex para contar palabras menores de 10 y mayores de 5»

Introducción a la Representación Intermedia (IR)

Representación intermedia (IR) , como sugiere el nombre, es cualquier representación de un programa entre los idiomas de origen y de destino. La forma intermedia del programa que se está compilando es la estructura de datos central en un compilador. Un compilador puede tener un solo IR o una serie de IR. Las decisiones que … Continue reading «Introducción a la Representación Intermedia (IR)»