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.