14
COMPILADOR DE FORTRAN H PARA C Y PASCAL JORGE SANTIAGO BEJARANO ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DEL ECUADOR SEDE IABRRA

Compiladores Fortran H, Pascal P y C

Embed Size (px)

DESCRIPTION

Resumen de los compiladores que usa fortran, pascal y C.

Citation preview

Page 1: Compiladores Fortran H, Pascal P y C

COMPILADOR DE FORTRAN H PARA C Y

PASCALJORGE SANTIAGO BEJARANO

ESCUELA DE INGENIERÍA

PONTIFICIA UNIVERSIDAD CATÓLICA DEL ECUADOR SEDE IABRRA

Page 2: Compiladores Fortran H, Pascal P y C

COMPILADOR PARA FORTRAN H

Page 3: Compiladores Fortran H, Pascal P y C

Las dos primeras realizan el a.léxico y

a.sintácticoproduciendo cuádruplos

La siguiente optimiza el código y los

recursos

La ultima genera código objeto a partir

de cuádruplos y asignaciones a

registros

COMPILADORES PARA FORTRAN H

Permite al usuario elegir no optimización,

optimización de registros o completa.

Escrito por Lowry y Medlock (1969)

Se realiza 4 pasadas:

Page 4: Compiladores Fortran H, Pascal P y C

ESTRUCTURA DE LOS COMPILADORES H

En el léxico:

• Devuelve: Los pares operador-operando son un token operando junto con el token no operando.

• Utiliza precedencia de operadores para las expresiones.

• Optimizaciones simples, sustituir multiplicaciones por dos por desplazamientos.

En la optimización

• Eliminación de subexpresiones comunes.

• Traslado de código.

• Propagación de copias

• Eliminación de variables de inducción.

Page 5: Compiladores Fortran H, Pascal P y C

PROCESO DE LOS COMPILADORES H

Page 6: Compiladores Fortran H, Pascal P y C

COMPILADOR PARA C

Page 7: Compiladores Fortran H, Pascal P y C

COMPILADOR PARA C

Lenguaje de propósito general (Ritchie)

Principal lenguaje de programación en unix

Unix esta escrito en C

Se van a examinar el diseñado por Ritchie

(1979) para PDP-11 y los transportables PCC de

Johnson

Compiladores de 2 pasadas

El PDP-11 tiene una tercera opcional para

optimizar los lenguajes ensamblador

Page 8: Compiladores Fortran H, Pascal P y C

ESTRUCTURA DE LOS COMPILADORES PARA C

Page 9: Compiladores Fortran H, Pascal P y C

COMPILADORES PARA C

COMPILADOR PDP-11

• Utiliza el descenso recursivo para todo excepto las expresiones.

• Expresiones con precedencia de operadores.

• Código intermedio:

• Expresión notación postfija.

• Ensamblador para estructuras de control.

En la optimización

• LALR(1) generado con YACC.

• Código intermedio:

• Expresión de notación prefija.

• Ensamblador demás construcciones.

Page 10: Compiladores Fortran H, Pascal P y C

COMPILADOR PARA PASCAL

Page 11: Compiladores Fortran H, Pascal P y C

COMPILADORES PARA PASCAL

El lenguaje fue desarrollado por Wirth

Experimentos sobre la portabilidad llevaron a Ammann al compilador

Pascal P

Generaban código P, para una máquina de

pila abstracta

Características:

Compilador de una pasada.

Organizado alrededor de A.Sintáctico.

Analizador descendente recursivo

El desarrollo del lenguaje y del primer compilador para este

fueron independientes

Page 12: Compiladores Fortran H, Pascal P y C

ORGANIZACIÓN DEL COMPILADOR PASCAL

La memoria de la máquina se organiza en las siguientes

áreas:

• Código para los procedimientos.

• Constantes

• Pilas de registro de activación.

• Montículo para datos asignados aplicando el operador new.

Page 13: Compiladores Fortran H, Pascal P y C

VENTAJAS E INCONVENIENTES

VENTAJAS

• Fue fácil de implementar.

• Generaba poca actividad de entrada/salida.

• El código de un procedimiento se compila en memoria y se escribe como una unidad a la memoria secundaria.

INCONVENIENTES

• Limitaciones en la calidad del código generado.

• Mucha necesidad de memoria.

Page 14: Compiladores Fortran H, Pascal P y C