Lenguajes de programacion

Páginas: 6 (1271 palabras) Publicado: 8 de agosto de 2013
Procesadores de lenguaje

Tema 1
Introducción

Ciencias de la Computación e Inteligencia Artificial

Tema 1. Introducción

Índice

1.1 Conceptos
1.2 Un poco de historia
1.3 Estructura de un compilador
1.4 Teoría de lenguajes formales

2

Procesadores de lenguaje

1

1.1 Conceptos

Tema 1. Introducción

Procesador
de lenguaje

Lenguaje fuente

• Procesador delenguaje: aplicación que toma como entrada un
conjunto de archivos descritos en un cierto lenguaje formal
(lenguaje fuente)
• Traductor: procesador de lenguaje cuya función consiste en reescribir los archivos de entrada en otro lenguaje formal
(lenguaje objeto)
3

Procesadores de lenguaje

1.1 Conceptos

Tema 1. Introducción

Lenguaje fuente

Traductor

Lenguaje objeto

• Ensamblador:traductor de lenguaje ensamblador a código
máquina
• Compilador: traductor de lenguaje de alto nivel a ensamblador
o a código máquina

4

Procesadores de lenguaje

2

Tema 1. Introducción

1.1 Conceptos

• Intérprete: Analiza el código fuente y lo ejecuta sin generar un
código objeto.
• Emulador: Intérprete en el que el código fuente es el código
máquina de una plataformadiferente.
• Compiladores vs intérpretes:
– Los programas compilados son mucho más rápidos
– Los compiladores consumen muchos recursos
– Los intérpretes utilizan código independiente de la plataforma
– Los intérpretes pueden ejecutar código generado en tiempo de
ejecución.

5

Procesadores de lenguaje

Tema 1. Introducción

1.1 Conceptos

• Preprocesador: pequeño compilador dedicado aexpandir las
macros e incluir ficheros.
• Enlazador (linker): programa que enlaza los diferentes módulos
compilados para generar el ejecutable.
• Compilador cruzado: compilador que genera código para una
máquina diferente a la utilizada para compilar.
• Autocompilador: compilador escrito en el mismo lenguaje que
va a compilar.
• Metacompilador: herramienta de ayuda al diseño decompiladores.
• Descompilador: programa que produce una representación de
alto nivel a partir del código máquina.
6

Procesadores de lenguaje

3

Tema 1. Introducción

1.2 Un poco de historia

• 1940’s:
– Primeros ordenadores.
– Programación directa en código máquina.
– Nace el ensamblador (traducido manualmente)
– Se automatiza la etapa de ensamblado

• 1950’s
– (1950) John Backusdirige en IBM un proyecto de lenguaje
algebraico
– (1954-1958) Nace el FORTRAN (FORmulae TRANslator)
– Primer compilador de FORTRAN para IBM modelo 704

7

Procesadores de lenguaje

Tema 1. Introducción

1.2 Un poco de historia

• 1950’s (mediados):
– Noam Chomsky publica sus estudios sobre la estructura de los
lenguajes y las gramáticas formales

• 1950’s (finales):
– F.L. Bauer(Univ. Munich) dirige un proyecto de lenguaje formal
– Se crea un comité conjunto con la Association for Computing
Machinery en el que participa Backus
– Se define IAL (International Algebraic Language)
– Posteriormente se denomina ALGOL 58 (ALGOrithmic
Language)

8

Procesadores de lenguaje

4

Tema 1. Introducción

1.2 Un poco de historia

• Características de ALGOL 58
–Definición de la notación BNF (Backus-Naur Form)
– Declaración de tipos de variables
– Estructura modular
– Funciones recursivas
– Paso de parámetros por valor o por nombre
– Precursor de Pascal, Ada o Modula

9

Procesadores de lenguaje

Tema 1. Introducción

1.2 Un poco de historia

• 1960’s: Primeras técnicas de desarrollo de compiladores
– 1958: Strong y otros proponen dividir elcompilador en dos fases:
front-end y back-end y promueven la creación de un lenguaje
intermedio universal (UNCOL – UNiversal Computer Oriented
Language).
– 1959: Rabin y Scott proponen utilizar autómatas deterministas
para el análisis léxico
– 1961: Primer analizador sintáctico descendente recursivo
– Durante toda la década se estudian intensamente las gramáticas
LL.

10

Procesadores de...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Lenguajes de programacion
  • Lenguajes de programación
  • lenguaje de programacion
  • lenguajes de programacion
  • Lenguaje De Programacion
  • lenguaje de programacion
  • Los Lenguajes De Programacion
  • Lenguaje de programación

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS