Conceptos de teoria de compiladores

Páginas: 5 (1103 palabras) Publicado: 15 de abril de 2013
GRAMÁTICA
La gramática es el estudio de las reglas y principios que regulan el uso de las lenguas y la organización de las palabras dentro de una oración. También se denomina así al conjunto de reglas y principios que gobiernan el uso de un lenguaje muy determinado; así, cada lengua tiene su propia gramática.

BNF y BNFE
Notación Backus – Naur
Es una meta sintaxis que se utiliza paradefinir gramáticas, utilizadas en la mayoría de los lenguajes de programación.
En BNF se determinan ciertas reglas para utilizar expresiones regulares, las cuales nos sirven para buscar y reemplazar caracteres las coincidencias encontradas.
Meta símbolos:
::= se define como
| Or
{ } Repeticiones
[ ] Opcionales
En Extended-BNF se agregan las definiciones:
? Opcional
0 a n veces
+ 1 a nLEXEMA
El lexema es una parte de una palabra que constituye la unidad mínima (monema) con significado léxico. Hay dos tipos de lexemas:
Independientes: son aquellos que no van unidos a otro monema: azul, árbol, leche (algunos lingüistas insisten, de todos modos, en que estas palabras también tienen sufijo vacío o sufijo –e en algunos casos).
Dependientes: son aquellos que van necesariamente unidosa otro monema. La primera parte de las siguientes palabras es el lexema (raíz): pat-o, am-a-r, cali-graf-ía, cam-a.

PATRÓN
Modelo que sirve de muestra para sacar otra cosa igual.
Conjunto de elementos que forman un unidad diferenciada y que se repiten a lo largo del tiempo, por lo que pueden tomarse como modelo o punto de referencia.

LEX
Es un programa para generar analizadoresléxicos (en inglés scanners o lexers). Lex se utiliza comúnmente con el programa yacc que se utiliza para generar análisis sintáctico. Lex, escrito originalmente por Eric Schmidt y Mike Lesk, es el analizador léxico estándar en los sistemas Unix. Lex toma como entrada una especificación de analizador léxico y devuelve como salida el código fuente implementando el analizador léxico en C.

AWK
Esun lenguaje de programación diseñado para procesar datos basados en texto, ya sean ficheros o flujos de datos. El nombre AWK deriva de las iniciales de los apellidos de sus autores: Alfred Aho, Peter Weinberger, y Brian Kernighan.
AWK es ejemplo de un lenguaje de programación que usa ampliamente el tipo de datos de listas asociativas (es decir, listas indexadas por cadenas clave), y expresiones regulares.Generalmente hablando, a AWK se le dan dos piezas de datos: un fichero de órdenes y un fichero primario de entrada. Un fichero de órdenes (que puede ser un fichero real, o puede ser incluido en la invocación de AWK desde la línea de órdenes) contiene una serie de órdenes que le dicen a AWK cómo procesar el fichero de entrada. El fichero primario de entrada es normalmente texto formateado dealguna manera; puede ser en un fichero real, o puede ser leído por AWK de la entrada estándar (teclado).

ANÁLISIS LÉXICO = SCANNER
Lee caracteres uno a uno y forma grupos de caracteres con alguna relación entre sí, y verifica si las cadenas pertenecen o no al lenguaje (tokens)
Cada token es una secuencia de caracteres tratados como una única entidad. Los tokens son la entrada para la siguienteetapa del compilador.
Existen 2 tipos de tokens:
„ Palabras reservadas (if, while, begin)
„ Cadenas no especificas (identificadores, constantes)
ANÁLISIS SINTÁCTICO = PARSER
Recibe como entrada los tokens que le pasa el analizador léxico, comprueba si los tokens llegan en orden correcto (orden permitido por el lenguaje) y se analiza la estructura de las expresiones en base a gramáticas. Aquí yase puede determinar si una estructura por ejemplo una expresión matemática está mal escrita o representada.
La salida es un árbol sintáctico (árbol de parser).
Cuando el programa fuente es incorrecto (sintácticamente), el analizador sintáctico es el responsable de producir un mensaje de error.
ANÁLISIS SEMÁNTICO
Comprueba que el significado de lo que se va leyendo es válido, comprueba...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Teoria De Compiladores
  • Teoría de compiladores
  • Teoria de compiladores
  • Concepto de compiladores e intépretes
  • conceptos para compiladores
  • TEORIA Y LENGUAJE DE COMPILADORES
  • teoria de conceptos y modos de conceptos
  • Conceptos Teoria

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS