1. Compilador de Fortran H, para C y Pascal
JUNIORTROYA
PONTIFICIA UNIVERSIDAD CATÒLICA DEL ECUADOR
SEDE IBARRA
2. FORTRAN
Fortran (previamente FORTRAN)1 (contracción
del inglés Formula Translating System) es un lenguaje de
programación alto nivel de propósito general, procedimental
e imperativo, que está especialmente adaptado al cálculo
numérico y a la computación científica.
Desarrollado originalmente por IBM en 1957 para el
equipo IBM 704, y usado para aplicaciones científicas y de
ingeniería
En FORTRAN las instrucciones que el usuario
transmite al ordenador se encuentran en un fichero
de texto (en código ASCII), que es necesario
escribir (utilizando un editor de textos
cualquiera).
3. FORTRAN
Al contrario que el BASIC, que es un lenguaje interpretado, el FORTRAN es un lenguaje compilado. Ésto
significa que, una vez escrito el programa, éste ha de ser traducido en bloque al lenguaje máquina, o sea, el
lenguaje que entiende el procesador del ordenador, mediante un proceso llamado compilación; por contra, en
un lenguaje interpretado las líneas de programa se van traduciendo según el flujo va pasando por ellas, con lo
que el proceso de ejecución se enlentece.
Escritura del programa
Las instrucciones del programa se escriben en el fichero dispuestas en líneas. En FORTRAN 77 las columnas
de la 1 a la 5 se reservan para que se puedan incluir etiquetas, en forma de números, que hagan de
señalización con vistas a la posibilidad de que el flujo del programa vuelva a esa línea desde otra parte del
programa. La columna 6 se reserva para incluir un símbolo que le indique al compilador que esa línea es la
continuación de la línea anterior. Por tanto, las instrucciones del programa en sí comienzan a partir de la
columna 6 (es decir, de la 7 a la 80). Un ejemplo de programa sencillo es:
PROGRAMA EJEMPLO
REAL A, B, C
A=1
B=A+1
PRINT *,A,B
C=A+B+1
PRINT *,'C es igual a=',C
END
4.
5.
6.
7.
8.
9. C
C es un lenguaje de programación creado
en 1972 por Dennis M. Ritchie en losLaboratorios Bell como
evolución del anterior lenguaje B, a su vez basado en BCPL.
Uno de los objetivos de diseño del lenguaje C es que sólo
sean necesarias unas pocas instrucciones en lenguaje
máquina para traducir cada elemento del lenguaje, sin que
haga falta un soporte intenso en tiempo de ejecución.
C se desarrolló originalmente (conjuntamente con el sistema
operativo Unix, con el que ha estado asociado mucho
tiempo) por programadores para programadores.
10.
11.
12. Compiladores para C
El compilador PDP-11 El compilador PCC
„Utiliza descenso recursivo
para todo excepto las
expresiones
Expresiones con
precedencia de
operadores
„Código intermedio:
ŠExpresiones notación
postfija
ŠEnsamblador para
estructuras de control
„LALR(1) generado con
YACC
„Código intermedio:
ŠExpresiones notación
prefija
ŠEnsamblador de más
construcciones
13.
14. Estructura de los compiladores H
En el léxico:
Devuelve: Los pares
operadoroperando son un
token operando
junto con el token no operando
precedente
Š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