Download Resumen Lenguaje Alto Nivel.docx

Document related concepts
Transcript
RESUMEN
1. Presentación de integrantes
•
Christian Alexis González
•
Juan David Olarte E.
•
Juan David Vanegas
2. Descripciones generales:
El computador entiende las instrucciones mediante cadenas de unos y ceros, esto se
denomina lenguaje de máquina. Para el humano es muy complicado trabajar con ese
sistema, por lo que se debió traducir ese lenguaje a palabras, por ejemplo, para sumar
se usa la letra A de la palabra inglesa ADD (sumar). De igual modo, a partir de
acciones humanas generales se originaron otras secuencias de programación como
SUB (restar), MUL (multiplicar), CALL (ejecutar subrutina), etc. Estas secuencias son
las llamadas “instrucciones” y a ese lenguaje traductor se le denominó lenguaje
ensamblador, el cual tiene la misma estructura que el lenguaje de máquina. Después
aparecieron otros lenguajes con una estructura sintáctica similar a los lenguajes
escritos por los humanos,a los que se les llamó lenguajes de alto nivel.
Lenguaje de programación: es un lenguaje cuyos símbolos y reglas para unir esos
símbolos están formalmente especificados, diseñado para crear programas que puedan
controlar el comportamiento físico y lógico de una máquina. Para poder programar se
debe hacer teniendo en cuenta que hay diferentes lenguajes de programación, y como
su nombre lo indica son lenguajes, conllevan las reglas de uno por lo tanto cuentan con
un léxico y una sintaxis que se deben respetar para su correcto funcionamiento.
Nivel de abstracción: se refiere a la capacidad que tiene el lenguaje para diferenciar el
“qué se quiere” del “cómo se hace” de modo que la sintaxis sea lo más intuitiva posible,
es decir, lo más cercana al lenguaje humano. El lenguaje de alto nivel, tiene un nivel de
abstracción muy alto, puesto que oculta los detalles del trabajo de la máquina y la
interacción con el usuario es muy intuitiva y versátil.
Compilador: Existen diversos lenguajes de programación de alto nivel, y la ventaja de
ellos es que sin interesar en cuál se programe, es posible pasar ese código al lenguaje
de máquina siempre y cuando exista un compilador para hacerlo. El compilador es el
encargado de traducir de un lenguaje de alto nivel a un lenguaje de bajo nivel, y como
cada arquitectura de procesadores maneja su propia sintaxis, entonces cada
arquitectura deberá tener su propio compilador.
Generalidades: El lenguaje de alto nivel es fácil de interpretar y por ende programar,
tiene un alto nivel de abstracción, es versátil (varias soluciones al mismo problema),
permite optimizar los diseños, es portable, entre otros.
3. Ejemplos de lenguajes de alto nivel
FORTRAN: IBM - 1957 - Adaptado al cálculo numérico y computación científica Análisis de elementos finitos, predicción numérica del tiempo, dinámica de fluidos,
física computacional, química computacional, etc.
BASIC: John Kemeny y Thomas Kurtz - 1965 - objetivo principal fue brindar un lenguaje
fácil de aprender para los principiantes en el tema, de propósito general y gran
aceptación.
JAVA: James Gosling - 1995 - Derivado de C y C++, de propósito general - Diseñado
para tener tan pocas dependencias de implementación como fuera posible. Su
intención es permitir que los desarrolladores de aplicaciones escriban el programa una
vez y lo ejecuten en cualquier dispositivo), lo que quiere decir que el código que es
ejecutado en una plataforma no tiene que ser recompilado para correr en otra.
4. Ventajas y desventajas
Ventajas:
•
Código sencillo y comprensible
•
Los programas son portables
•
Tiempo de formación corto
•
Reglas sintácticas similares al lenguaje humano
•
Bajos costos de los programas
•
Fáciles de mantener
•
Código reutilizable (C-Funciones; Java-Objetos)
Desventajas:
•
Tiempos de ejecución más largos
•
Plataforma predeterminada
•
No se aprovechan los recursos internos de la máquina
•
Aumento en la ocupación de memoria
6. CONCLUSIONES
Con el paso de los años no sólo han avanzado las técnicas de integración de los
procesadores, también se han desarrollado mecanismos para que la programación sea
más eficiente y en menos ciclos de operación de puedan ejecutar tareas complejas con
menos recursos de procesamiento.
El hecho de mejorar la experiencia para el programador implica una traducción al
lenguaje de máquina, este proceso es denominado compilación e implica una
penalización en el tiempo de ejecución de los programas además de un uso superior en
memoria, lo anterior debido a las traducciones entre lenguajes que se deben realizar
para poder obtener un programa ejecutable por el procesador.
Se penaliza la traducción entre lenguajes de programación con retrasos en el tiempo de
ejecución y espacio en memoria. Esto hace que los programas sean más lentos puesto
que deben ser “traducidos” repetidamente para que la máquina pueda ejecutar el
programa y además esto conlleva al consumo de más recursos internos de la máquina,
como la memoria.
Pese a las desventajas, en términos de programación, es mucho más fácil de trabajar
con lenguaje de alto nivel que en lenguaje de bajo nivel. El lenguaje es más
comprensible y permite que no haya que tener un nivel muy elevado de conocimientos
para poder desarrollar aplicaciones útiles.
La versatilidad del lenguaje permite atacar problemas con diferentes soluciones y
permite la optimización de los programas.