22
IE. Fernando Jiménez Valencia. Dic-nov 2010.

Compiladores iswi (parte 1)

Embed Size (px)

Citation preview

Page 1: Compiladores iswi (parte 1)

IE. Fernando Jiménez Valencia.

Dic-nov 2010.

Page 2: Compiladores iswi (parte 1)

Al terminar la unidad el alumno describirá el concepto y las diferentes partes del compilador

Page 3: Compiladores iswi (parte 1)

Antecedentes.- Programa, lenguajes de programación, etc.

- Clasificación y generaciones.Compilación.

- Proceso.- Estructura.

Bibliografía.

Page 4: Compiladores iswi (parte 1)

•Al finalizar el tema el alumno describirá los conceptos básicos de programa, lenguaje de programación y su clasificación.

Page 5: Compiladores iswi (parte 1)

5

Conjunto de pasos para llevar acabo una tarea o la resolución de un problema (ejemplo: una receta de cocina, un plan de trabajo, etc.)

Un programa es un archivo como cualquier otro archivo en el sistema.

Un proceso es un programa en ejecución. (Ejemplo: Acomodando cajas clasificadas y ordenadamente, cocinando a través de una receta, etc.)

Page 6: Compiladores iswi (parte 1)

ENTRADA PROCESOS SALIDA

datosMemoria central

resultados

PROGRAMA

Page 7: Compiladores iswi (parte 1)

Programa

objetos Acciones

Page 8: Compiladores iswi (parte 1)

Consiste en la elaboración de una solución o algoritmo (programa) de un problema planteado.

En el diseño se utilizan técnicas como: la programación estructurada y el diseño modular.

La solución inicialmente se diseña utilizando una notación intermedia llamada pseudocódigo o mediante notaciones gráficas como diagramas de flujo, sin tener en cuenta el lenguaje de programación que se vaya a utilizar.

Page 9: Compiladores iswi (parte 1)

Consiste en escribir el algoritmo o pseudocódigo en un lenguaje de programación.

Imprime los números pares que hay entre 1 y 100.

for (i=2; i<=100;i=i+2) printf(“ %d, “, i);

Page 10: Compiladores iswi (parte 1)

Notación para escribir programas, a través de los cuales podemos comunicarnos con el hardware y dar así las ordenes adecuadas para la realización de un determinado proceso.

Page 11: Compiladores iswi (parte 1)

Gramática (sintaxis y morfología) o conjunto de reglas que se aplican a un alfabeto constituido por el conjunto de símbolos utilizados.

(sintaxis)inteligente El muy estudiante esEl estudiante es muy inteligente.(morfología)Color, colores, descolorido

Page 12: Compiladores iswi (parte 1)

Atendiendo su proximidad del lenguaje maquina al lenguaje humano.

Page 13: Compiladores iswi (parte 1)

Primer lenguaje utilizado en la programación. Único que entiende directamente la computadora.

0000 0001 1010 0001 01 A11000 1001 1001 1010 89 9A0011 1010 1001 1100 3A 9C

Se escribe únicamente en alfabeto binario. La presencia de voltaje se representa con un uno (1) y la ausencia con un cero (0).

Dependencia del hardware en que se crean

Dejo de utilizarse como lenguaje de programación por su dificultad y complicación.

Page 14: Compiladores iswi (parte 1)

Primer intento de sustituir el lenguaje maquina por otro similar al lenguaje humano.

Utiliza para su escritura palabras nemotécnicas en lugar de cadenas de bits.

Solo corren en la máquina en que se crearon.

Dependen del set de instrucciones de la máquina en que operan

Page 15: Compiladores iswi (parte 1)

Se caracteriza por utilizar una semántica similar al lenguaje humano natural.

Incorporan instrucciones comprensibles (while, if – then, do, repeat, etc.)

Logran la independencia de la máquina (código portable) con la única condición de disponer de un programa traductor o compilador.

El problema que presenta es la gran cantidad de ellos con diferentes versiones o dialectos.

Page 16: Compiladores iswi (parte 1)

FORTRAN (traductor de

formulas) lenguaje especializado en aplicaciones técnicas y científicas. Es el más antiguo y fue definido en 1955 en EU por IBM.

Page 17: Compiladores iswi (parte 1)

COBOL.- Lenguaje común orientado a negocios (aplicaciones comerciales). Creado en 1960 por CODASYL y patrocinado por el Departamento de Defensa de EU.

Page 18: Compiladores iswi (parte 1)

PL/I.- Creado a inicios de los 60´s por IBM para el sistema 360, inspirándose en los lenguajes AGOL, COBOL y FORTRAN. Útil para aplicaciones técnico-científicas, comerciales, de proceso de textos, de base de datos y de programación de sistemas.

BASIC.- Lenguaje de fácil entendimiento para principiantes . Creado en 1965 por John G. Kemeny y Thomas E. Kurtz del Dartmouth College (EU).

Page 19: Compiladores iswi (parte 1)

PASCAL.- creado en 1970 por el suizo Nicklaus Wirth, Aporta los conceptos de tipo de datos, programación estructurada y diseño descendente.

Page 20: Compiladores iswi (parte 1)

• Creado en 1972 por Dennis Ritchie bajo el trabajo de Ken Thomson, creadores UNIX. Lenguaje idóneo para la programación de sistemas, aplicaciones técnico-científicas, de base de datos, etc.

Page 21: Compiladores iswi (parte 1)

Primera generación (40´s y 50´s).- Tubo al vacio (bulbo). Lenguajes de maquina y ensambladores.

Segunda generación (50´s-60´s).- Transistor de silicio. Primeros lenguajes de alto nivel FORTRAN , BASIC y COBOL.

Tercera generación (fines de los 60´s y década de los 70´s).- Circuitos integrados y microprocesadores. Lenguajes PASCAL, MODULA, C/C++, Visual Basic, Java

Cuarta generación (finales 70´s a la fecha).- Orientados básicamente a las aplicaciones de gestión y manejo de base de datos. Progress, Oracle, SQL, Informix, etc.

Quinta generación.- Orientados a la inteligencia artificial y al procesamiento del lenguaje natural. LIPS, PROLOG, etc.

Page 22: Compiladores iswi (parte 1)

FIN