martes, 6 de octubre de 2009

1ª-5ª generacion de leguajes de programacion

1ª Generación
• Ordenadores sólo entienden lenguaje máquina
(instrucción + operando en hexadecimal)
• Cada ordenador tiene su lenguaje propio
• Se hace referencia a las posiciones de memoria por su
nombre
• Se busca cambiar valores numéricos por mnemónicos



2ª Generación
• Lenguajes de bajo nivel: lenguaje ensamblador
– después es necesario traducirlo a lenguaje máquina
(usando un assembler-ensamblador)
– sigue siendo dependiente de la máquina
– Solución diseñada a muy bajo nivel



3ª Generación
• Lenguajes de alto nivel
– primitivas del lenguaje son independientes de la máquina
– 1 instrucción a alto nivel = N instrucciones de lenguaje máquina
– necesita un proceso de traducción (compilación o interpretación)
para pasar a lenguaje máquina
• Independencia de la máquina
– Con un traductor adecuado un programa en un lenguaje puede
llevarse a otra máquina distinta
– Creación de normas ANSI e ISO para garantizar la
compatibilidad



4ª-5ª Generación
• Aplicaciones vs lenguajes de programación
– Antes: Lenguajes de propósito general
Fortran, Basic, C, Pascal, C++,...
– Ahora entornos ligados a aplicaciones:
• Visual Basic, Visual C++
• Paquetes científicos (herederos de Fortran): Maple, Matlab,..
• Sistemas inteligentes (herramientas de Inteligencia Artificial)
• Paquetes específicos: Lenguajes simulación
• Programación web,...
• Aplicaciones gestión de información: Bases de datos
(SQL),...
• Programación de sistemas: C, awk,Perl,...
• Futuro (5ª generación): ¿paradigma declarativo a bajo
nivel?

No hay comentarios: