viernes, 17 de febrero de 2012

LENGUAJES DE PROGRAMACION Y GENERACIONES


Lenguaje de alto nivel
La programación en un lenguaje de bajo nivel como el lenguaje de la máquina o el lenguaje simbólico tiene ciertas ventajas:
• Mayor adaptación al equipo.
• Posibilidad de obtener la máxima velocidad con mínimo uso de memoria.
Pero también tiene importantes inconvenientes:
• Imposibilidad de escribir código independiente de la máquina.
• Mayor dificultad en la programación y en la comprensión de los programas.
Por esta razón, a finales de los años 1950 surgió un nuevo tipo de lenguaje que evitaba los inconvenientes, a costa de ceder un poco en las ventajas.
Estos lenguajes se llaman “de tercera generación” o “de alto nivel”, en contraposición a los “de bajo nivel” o “de nivel próximo a la máquina”.
Principales lenguajes de alto nivel
• Ada • ALGOL • Basic • C (en realidad es un lenguaje de medio nivel). • C++ • CT • Clipper • Cobol • Fortran • Java • Lexico • Logo • Object Pascal • Pascal • Perl • PHP • PL/SQL • Python • Modula-2 • Lenguajes funcionales o Haskell o Lisp
Lenguaje de medio nivel
Se dice del lenguajes de programación como C, que se encuentran entre los lenguajes de alto nivel y los lenguajes de bajo nivel. Estos lenguajes son clasificados muchas veces de alto nivel, pero permiten ciertos manejos de bajo nivel. Son precisos para ciertas aplicaciones como la creación de sistemas operativos, ya que permiten un manejo abstracto (independiente de la máquina, a diferencia del ensamblador), pero sin perder mucho del poder y eficiencia que tienen los lenguajes de bajo nivel.
Una característica distintiva, por ejemplo, que convierte a C en un lenguaje de medio nivel y al Pascal en un lenguaje de alto nivel es que en el primero es posible manejar las letras como si fueran números (en Pascal no), y por el contrario en Pascal es posible concatenar las cadenas de caracteres con el operador suma y copiarlas con la asignación (en C es el usuario el responsable de llamar a las funciones correspondientes).

Lenguaje de bajo nivel
Un lenguaje de programación de bajo nivel es el que proporciona poca o ninguna abstracción del microprocesador de un ordenador. Consecuentemente es fácilmente trasladado a lenguaje de máquina.
La palabra “bajo” no implica que el lenguaje sea inferior a un lenguaje de alto nivel; se refiere a la reducida abstracción entre el lenguaje y el hardware. Uso: ventajas e inconvenientes.
En general se utiliza este tipo de lenguaje para programar controladores (drivers).
La programación en un lenguaje de bajo nivel como el lenguaje de la máquina o el lenguaje simbólico tiene ciertas ventajas:
• Mayor adaptación al equipo.
• Posibilidad de obtener la máxima velocidad con mínimo uso de memoria.
Pero también tiene importantes inconvenientes:
• Imposibilidad de escribir código independiente de la máquina.
• Mayor dificultad en la programación y en la comprensión de los programas.
Generaciones de lenguaje de programacion
Algo parecido ha ocurrido con la programacion de los ordenadores (el sofware), que se realiza en lenguajesque suelen clasificarse en cinco generaciones, de las que las tres primeras son evidentes, mientras no todo el mundo está de acuerdo en las otras dos. Estas generaciones no coincidieron exactamente en el tiempo con las de hardware, pero sí de forma aproximada, y son las siguientes:
§  primera generacion: Los primeros ordenadores se programaban directamente en código binario, que puede representarse mediante secuencias de ceros y unos sistema binario. Cada modelo de ordenador tiene su propio código, por esa razón se llama lenguaje de máquina.
§  Segunda generación: Los lenguajes simbólicos, asimismo propios de la máquina, simplifican la escritura de las instrucciones y las hacen más legibles.
§  Tercera generación: Los lenguajes de alto nivel sustituyen las instrucciones simbólicas por códigos independientes de la máquina, parecidas al lenguaje humano o al de lasMatemáticas.
§  Cuarta generación: se ha dado este nombre a ciertas herramientas que permiten construir aplicaciones sencillas combinando piezas prefabricadas. Hoy se piensa que estas herramientas no son, propiamente hablando, lenguajes. Algunos proponen reservar el nombre de cuarta generación para la programación orientada a objetos.
Quinta generación: se llama así a veces a los lenguajes de la inteligencia artificial, aunque con el fracaso del proyecto japonés de la quinta generación el nombre ha caído en desuso

No hay comentarios:

Publicar un comentario