SEGUNDA PARTE - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

SEGUNDA PARTE

Description:

SEGUNDA PARTE – PowerPoint PPT presentation

Number of Views:104
Avg rating:3.0/5.0
Slides: 23
Provided by: Fern210
Category:
Tags: parte | segunda | parte

less

Transcript and Presenter's Notes

Title: SEGUNDA PARTE


1
Unidad III CompiladoresIntroducción al Software
I
  • SEGUNDA PARTE
  • IE. Fernando Jiménez Valencia.
  • Noviembre 2009.

2
OBJETIVO
  • Al terminar la unidad el alumno describirá los
    conceptos y las diferentes partes de los
    compiladores

3
AGENDA
  • Antecedentes.
  • Programa, lenguajes de programación, etc.
  • Clasificación y generaciones.
  • Compilación.
  • Proceso.
  • Estructura.
  • Bibliografía.

4
Compilación
  • Programa de proceso, proceso de compilación y
    estructura general de un compilador

5
Programas de proceso
  • Son los que están enfocados preferentemente para
    ayudar al programador en la puesta punto de los
    programas.

Traductores.- son meta-programas que toman como
entrada un programa escrito en lenguaje simbólico
semejante al natural y proporciona como salida un
programa escrito en lenguaje compresible para el
hardware de la computadora.
  • Ensambladores
  • Compiladores
  • Interpretes

Programas de proceso
De servicio.- grupo de programas que realizan
funciones útiles para el sistema o para el
usuario. (comandos o utilerías)
6
TRADUCTORES
  • Programa ensamblador.- transforman programas
    fuente escritos en lenguaje ensamblador, en un
    programas objeto escritos en lenguaje maquina y
    ejecutables directamente por el hardware de la
    computadora.
  • Programa compilador.- realiza la traducción
    completa del programa fuente escrito en lenguaje
    simbólico de alto nivel, en un programa objeto
    escritos en lenguaje maquina. La traducción se
    realiza completa en caso de no existir errores.
  • Programa interprete.- transforma cada instrucción
    del programa fuente en instrucciones de lenguaje
    maquina y lo va ejecutando a la vez.

7
Programa fuente?
  • Programa escrito por el programador en lenguaje
    simbólico alejado del lenguaje maquina (binario).
    (extensión .CPP o .C para lenguaje C)

Programa objeto?
  • Programa binario generado por el compilador a
    partir de un programa fuente. (extensión es
    .OBJ)

8
Traductores de lenguaje
  • Interpretes
  • Cada que se ejecuta el programa traduce
    instrucción por instrucción a código máquina.
    Ejemplos DOS, Born shell de Unix, bash de Linux,
    BASIC, etc.
  • Compiladores
  • Traducen solo una vez todo el programa a código
    objeto (binario) para después crear un ejecutable
    . Ejemplos C/C, PASCAL, etc.

PRACTICA CON DOS Y EL COMPILADOR DE C
9
Diferencia entre
Compilador
Interprete
10
Interprete
  • Editar y ejecutar un programa (.BAT)

11
Compilación
  • Consiste en obtener el programa objeto codificado
    en lenguaje maquina a partir del programa fuente.

12
PASOS Implementación y exploración de programas
EDICIÓN (programa fuente)
Se crea el programa fuente (.CPP) almacenado en
la computadora. EJERCICIO EDITAR
Se obtiene un programa objeto (.OBJ),
codificado en lenguaje maquina a partir del
programa fuente. Realizada automáticamente
mediante el compilador del lenguaje.
COMPILACIÓN (programa objeto)
El programa ejecutable (.EXE), se obtiene
enlazando el programa objeto y los módulos o
rutinas internas del lenguaje que forman parte
del la aplicación necesarias. Proceso llevado a
acabo en la etapa del MAKE.
ENLACE (programa ejecutable)
PRUEBAS DE EJECUCIÓN.
El programa ejecutable se somete a un juego de
datos prueba capaz de detectar las posibles
incorrecciones en su funcionamiento.
  • El programa se instala en el sistema informático,
    para la disposición de los usuarios. Se evalúa
    periódicamente y se hacen adaptaciones y
    modificaciones necesarias para mantenerla
    actualizada.

EXPLOTACIÓN Y MANTENIMIENTO.
13
Compilador de Lenguaje
14
Estructura general de un compilador
Analizador lexicográfico(scanner).- examina en el
programa fuente las unidades básicas (léxicas) o
tokens de información pertenecientes al lenguaje.
Un token es un elemento o cadena con significado
propio en el programa (palabras reservadas del
lenguaje, identificadores, operadores, etc.). Un
error puede ser una palabra reservada mal
escrita, un identificador no permitido, etc.
15
Estructura general de un compilador
  • Analizador sintáctico (parser).- recibe la tira
    de tokens del scanner e investiga en ellas los
    posibles errores sintácticos que aparezcan.
    Errores de formato de instrucciones, duplicidad
    de identificadores de distintas variables, etc.
    Los errores son reportados mediante un listado de
    compilación.

16
Estructura general de un compilador
  • Generador de código intermedio.- traduce el
    resultado del análisis anterior (en caso de
    ausencias de errores) a un código intermedio
    propio del compilador, para que con él permita la
    portabilidad del lenguaje (posibilidad de
    utilización en distintas computadoras).

17
Estructura general de un compilador
  • Optimizador de código.- su misión es tomar el
    código intermedio y optimizarlo, adaptándolo a
    las características del procesador que va
    dirigido.

18
Estructura general de un compilador
  • Generador de código final.- Traduce el código
    intermedio optimizado en el código final, es
    decir, en el lenguaje máquina del procesador al
    que el compilador va dirigido.

19
Estructura general de un compilador
  • Modulo de tratamiento de errores.- facilita la
    detección de errores y, en algún caso, recupera
    errores en las distintas fases de compilación.

20
Estructura general de un compilador
  • Tipos de errores
  • Lexicográficos se producen por tokens no
    reconocibles.
  • Sintácticos son los que no cumplen con las
    reglas de sintaxis del lenguaje.
  • Semánticos Se detecta en alguna fase de la
    compilación y en algún caso en la de ejecución y
    son aquellos que no interrumpen el proceso
    (warnings).
  • Lógicos son los debidos a la utilización de un
    algoritmo o expresión incorrecta para el problema
    que se trata de resolver.
  • Ejecución son errores relacionados con
    desbordamientos, operaciones matemáticamente
    irresolubles, etc.

21
Estructura general de un compilador
  • Tabla de símbolos es el elemento que almacena
    todos los datos referidos a variables y
    estructuras de datos del programa que se está
    compilando.

22
Bibliografía.
  • Eduardo Alcalde, Miguel García. Informática
    Básica. Segunda Edición. Edit. McGrawHill. 1994.
Write a Comment
User Comments (0)
About PowerShow.com