jola
Generación de código
En programación, la generación de código es una de las fases mediante el cual un compilador convierte un programa sintácticamente correcto en una serie de instrucciones a ser interpretadas por una máquina. La entrada en esta fase viene representada, típicamente por un Árbol de Sintaxis Abstracta; la máquinadestino puede ser un microprocesador o una máquina abstracta tal como una máquina virtual o un lenguaje intermedio, legible por un humano. Compiladores más sofisticados realizan múltiples traducciones en cadena con el fin de poder construir códigos para múltiples plataformas y evitar tener que construir todas las capas del compilador.
INTERPRETADORES
Se define como lenguajes de programaciónde alto nivel, los cuales ejecutan un programa línea por línea. El programa permanece en su forma original denominado programa fuente y el intérprete proporciona la traducción al momento de ejecutar cada una de las instrucciones. Un intérprete es un programa que procesa los programas escritos en un lenguaje de alto nivel.
Un intérprete traduce cada instrucción o sentencia del programa escrito a unlenguaje de máquina e inmediatamente se ejecuta. Encuentran su mayor ventaja en la interacción con el usuario, al facilitar el desarrollo de programas, ya que los errores son fáciles de detectar y sobre todo de corregir.
Existen lenguajes que utilizan un Intérprete, un ejemplo de ello es el programa JAVA, y su intérprete traduce en el mismo instante de lectura, el código en lenguaje máquinapara que pueda ser ejecutado.
En la actualidad, uno de los entornos más comunes de uso de los intérpretes informáticos es Internet, debido a la posibilidad que estos tienen de ejecutarse independientemente de la plataforma.
Encadenamiento
El encadenamiento es un proceso de combinar el código de maquina y los datos en archivos objeto con archivos de biblioteca para crear un archivo ejecutable.Este proceso es complicado. El código de C requiere la biblioteca estándar de C y un código de inicio especial para ejecutarse. Es mucho más fácil dejar que el compilador de C llame al encadenador con los parámetros correctos que intentar llamar al encadenador directamente.
Encadenamiento Progresivo y Regresivo
El encadenamiento de reglas puede ser hacia adelante. En ésta, se inicia concláusulas atómicas de la base de conocimiento. Luego se aplica el modus Ponens. Generalizado hacia delante hasta que ya no se puedan obtener nuevas cláusulas atómicas.
Las inferencias realizadas son de la forma:
Situación ⇒ Respuesta
Reglas:
R1: si A entonces B.
R2: si B entonces C.
R3: si C entonces Z
Hechos:
H1: A (dato de partida)
H3: Z (objetivo a alcanzar)
En el encadenamientoregresivo se aplica todo lo contrario; es decir, dado un objetivo se pretende llegar al hecho para dar una solución a un problema.
El encadenamiento regresivo o back tracking permite regresar a una opción anterior en caso de que existieran varios encadenamientos de regla que no llevan a la resolución
Programa modular
La programación modular es un paradigma de programación queconsiste en dividir un programa en módulos o subprogramas con el fin de hacerlo más legible y manejable.
Se presenta históricamente como una evolución de la programación estructurada para solucionar problemas de programación más grandes y complejos de lo que ésta puede resolver.
Al aplicar la programación modular, un problema complejo debe ser dividido en varios subproblemas más simples, y estos a suvez en otros subproblemas más simples. Esto debe hacerse hasta obtener subproblemas lo suficientemente simples como para poder ser resueltos fácilmente con algún lenguaje de programación. Ésta técnica se llama refinamiento sucesivo, divide y vencerás ó análisis descendente (Top-Down).
Un módulo es cada una de las partes de un programa que resuelve uno de los subproblemas en que se divide el...
Regístrate para leer el documento completo.