Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Facilitador: Participante:
Pedro Rangel Br. Daniel Rodríguez
de aplicación permite a los usuarios llevar a cabo tareas específicas, en cualquier actividad
susceptible de ser automatizada o asistida, también podemos decir que el software de
aplicación son aquellos que nos ayudan a la elaboración de una determinada tarea, este tipo
de software es diseñado para facilitar al usuario en la realización de un determinado tipo de
trabajo.
Lenguajes De Programación
Diagrama algoritmos
Diagrama programación
Una clasificación habitual de los lenguajes es considerar dos grupos según la forma
de ejecución en un ordenador, intérpretes y compiladores, según se describe seguidamente.
Intérpretes
- Su principal ventaja es que permiten una fácil depuración. Permiten una mayor
interactividad con el código en tiempo de desarrollo.
- En algunos lenguajes (Smalltalk, Prolog, LISP) está permitido y es frecuente añadir
código según se ejecuta otro código, y esta característica solamente es posible
implementarla en un intérprete.
- Puede ser interrumpido con facilidad.
- Puede ser rápidamente modificado y ejecutado nuevamente.
- Un Intérprete necesita menos memoria que un compilador.
- Facilita la búsqueda de errores.
- En algunos lenguajes está permitido añadir código según se ejecuta otro código.
- Menor consumo de memoria.
Desventajas de los intérpretes
- Lentitud de ejecución, ya que al ejecutar a la vez que se traduce no puede aplicarse un alto
grado de optimización. Cada instrucción debe ser traducida a código máquina tantas veces
como sea ejecutada,
-Durante la ejecución, el intérprete debe residir en memoria ya que no genera código
objeto.
-Tamaño del programa objeto, que exige añadir el intérprete al programa propiamente
dicho.
Por contra un lenguaje se dice que es compilado, cuando el programa entero se traduce
mediante el compilador de dicho lenguaje al código máquina correspondiente y el resultado
se almacena de manera permanente en un archivo. De esta forma el programa se ejecutará
de forma mucho más rápida que con un intérprete, sobre todo si hay estructuras que se
repiten, caso de los ciclos. La principal desventaja es cuando se produce un error, que
muchas veces se detecta en el momento de la ejecución, y la corrección no se puede hacer
de inmediato, sino que hay que realizar todo el proceso de compilado desde el principio. Un
ejemplo típico de lenguaje de este tipo el C ++, ampliamente usado en el desarrollo de
programas. El siguiente esquema muestra cómo trabaja un compilador:
Compiladores
Tipos de compiladores:
- Una sola pasada: examina el código fuente una vez, generando el código o programa
objeto.
- Pasadas múltiples: requieren pasos intermedios para producir un código en otro lenguaje,
y una pasada final para producir y optimizar el código producido durante los pasos
anteriores.
- Optimación: lee un código fuente, lo analiza y descubre errores potenciales sin ejecutar el
programa.
- Compiladores incrementales: generan un código objeto instrucción por instrucción (en vez
de hacerlo para todo el programa) cuando el usuario teclea cada orden individual. El otro
tipo de compiladores requiere que todos los enunciados o instrucciones se compilen
conjuntamente.
- Compilador cruzado: se genera código en lenguaje objeto para una máquina diferente de
la que se está utilizando para compilar. Es perfectamente normal construir un compilador
de Pascal que genere código para MS-DOS y que el compilador funcione en Linux y se
haya escrito en C++.
- Compilador con montador: compilador que compila distintos módulos de forma
independiente y después es capaz de enlazarlos.
- Autocompilador: compilador que está escrito en el mismo lenguaje que va a compilar.
Evidentemente, no se puede ejecutar la primera vez. Sirve para hacer ampliaciones al
lenguaje, mejorar el código generado, etc.
Dentro de los de estos grupos está el lenguaje máquina, que es programar en el ámbito de la
CPU, por lo tanto, usando ceros y unos, lenguaje muy difícil y propenso a errores. El otro
más conocido dentro de esta categoría es el Ensamblador, que utiliza nemónicos, por
ejemplo, ADD (sumar), SUB (restar), MUL (multiplicar), CALL (ejecutar subrutina), a
escala sencilla, y por lo tanto evita las secuencias de ceros y unos. Aún así es bastante
complicado y no es recomendable para usuarios sin amplios conocimientos.
program UniMurcia;
begin writeln('Universidad de Murcia'); end.
Esto implica dos ventajas principales, una es que la persona que desarrolla los
programas no ha de saber nada acerca del ordenador en que se ejecutará el programa, la
otra es que los programas son portables, es decir el mismo programa (en teoría) ha de
funcionar sobre distintos tipos de ordenadores.
Sistemas Operativos