PROCESO DE COMPILACION
EVALUACION SINTACTICA
ANALISIS SINTACTICO
DOS ASPECTOS IMPORTANTES
GENERACION CODIGO
Objeto para la maquina objeto deseada que en el caso normal de no tratarse de un copilador cruzado es el mismo código, con el que esta escrito el copilador.
LENGUAJE INTERMEDIO
considerar la compilación en dos pasos: primero de lenguaje fuente (LF) a lenguaje Intermedio (LI) y , de LI a lenguaje Objeto (LO).
VENTAJAS
-Facilitar la base de optimización de un copilador.
-Aumentar la portabilidad del compilador de una maquina a otra.
-Facilitar la división del proyecto en fases.
ANALISIS LEXICOGRAFICO
El programa fuente es para el analizador lexicográfico una secuencia de caracteres que necesita reconocer y de la cual debe eliminar los caracteres inútiles ( comentarios, espacios, etc.) y transformarla en una secuencia de elementos o términos que servirá de entrada a la fase de analisis sintactico.
SIMBOLOS
A = Es un identificador
* = Es un operador
CARACTERES
Constantes
Identificadores
Operadores (aritméticos, relacionales, lógicos, etc.)
Palabras calve ( IF, GOTO, WHILE, etc.)
Delimitadores(^{, “, ( etc.)
Primero un análisis del programa fuente para producir la sintaxis del programa objeto.
Se realiza la generación del código, que es la traducción del programa fuente interno a lenguaje de maquina o a un lenguaje intermedio.
El programa fuente se representa internamente de muy diversas formas: árbol, lista de cuartetos (operador, operador, operador, resulttado)
El explorador (scanner) o analizador lexicográfico tiene como misión indagar sobre los caracteres del programa fuente y generar los símbolos del programa para pasarlo a los analizadores sintáctico y semántico.
CICLOS DE VIDA DEL SOFTWARE
SE CLASIFICAN EN VARIOS MODELOS:
V
Establece que los procedimientos
utilizados prueven si la aplicación cumple las especificaciones para que asi se cree la fase del diseño.
CONCURRENTE
Es similar al modelo espiral, provee una meta-descripción del proceso software, mientra que la contribucion primaria del modelo espiral es en realidad que las actividades ocurran repetidamente, el modelo concurrente es la capacidad de describir las multiples actividades del software.
ESPIRAL
Es un modelo del ciclo de meta-vida. En este
modelo, el esfuerzo de desarrollo es iterativo. Al terminar uno su esfuerzo de desarrollo inmediatamente otro inicia
PROTOTIPADO DE REQUERIMIENTOS.
Es la creación de una implementación parcial de un
sistema, para el propósito explícito de aprender sobre los requerimientos del sistema.
DESARROLLO EVOLUTIVO
Este modelo acepta que los requerimientos del usuario pueden cambiar en cualquier momento. La practica nos enseña que adquirir los requerimientos al inicio es demaciado dificil.
MODELO DE DESARROLLO INCREMENTAL
Se basa en la filosofía de construir incrementando las funcionalidades del programa, se realizan construyendo modulos que cimplen con las diferentes funciones del sistema.
MODELO CASCADA
sirve como bloque de construcción para los
demás modelos de ciclo de vida.
Los ciclos de vida permiten detectar los errores lo mas rapido posible.
Se describe el desarrollo de software, desde la fase inicial hasta la fase final. El propósito de este programa es definir las distintas fases intermedias que se requieren para validar el desarrollo de la aplicación.