los lenguajes de - Blog Logica y Algoritmos

Anuncio
LENGUAJES DE PROGRAMACION INFORMATICOS PARA EL DESARROLLO DE SOFTWARE
3. LOS LENGUAJES DE PROGRAMACION
Para que un procesador realice un proceso se le debe suministrar un algoritmo adecuado. El
procesador debe ser capaz de interpretar el algoritmo, lo que significa:
-
Comprender las instrucciones de cada paso.
Realizar las operaciones correspondientes.
Un programa se escribe en un lenguaje de programación y las operaciones que conducen a
expresar un algoritmo en forma de programa se llama programación.
Los tipos de lenguaje utilizados en la actualidad son:
o
o
o
Lenguaje Máquina.
Lenguaje de bajo nivel (ensamblador)
Lenguaje de alto nivel.
3.1. Instrucciones a la computadora
Las instrucciones básicas y comunes a casi todos los lenguajes de programación se pueden
condensar en cuatro grupos:
o
o
o
o
Instrucciones de entrada y salida, estas son instrucciones de transferencia de
información y datos entre distintos dispositivos (teclado, impresora, mouse,
unidades de disco, entre otros) y la memoria central.
Instrucciones aritméticas – lógicas, estas instrucciones ejecutan operaciones
aritméticas (suma, resta, multiplicación, división y potencias), y las lógicas
(operaciones AND, OR, NOT, etc)
Instrucciones selectivas, estas instrucciones permiten la selección de tareas
alternativas en función de los resultados de diferentes expresiones
condicionales.
Instrucciones repetitivas, estas nos permiten la repetición de secuencias de
instrucciones, un numero determinado o indeterminado de veces.
3.2. Lenguajes máquina.
Estos lenguajes son aquellos que están escritos directamente en el lenguaje máquina, ya que
son inteligibles por la computadora, estas instrucciones son cadenas binarias (cadenas de
dígitos 0 y 1), se denominan instrucciones de máquina o código máquina.
Las ventajas son la posibilidad de cargar (transferir un programa a la memoria) sin la necesidad
de traducirlo, lo que hace que tenga un velocidad superior en la ejecución del mismo.
1
Las desventajas son:
o
o
o
o
Dificultad y lentitud en la codificación.
Poca fiabilidad.
Dificultad grande de verificar y poner a punto los programas
Solo son ejecutados en el mismo procesador.
3.3. Lenguajes de bajo nivel
Estos son mas fáciles de utilizar que los anteriores, ya que dependen de la computadora, el
lenguaje de bajo nivel es por excelencia ensamblador (assembly language). Estos conllevan a
instrucciones conocidas como nemotécnicos, o sea, típicos de operaciones aritméticas como:
ADD, SUN, DIV, etc o bien en español SUM, RES, DIV, etc. Una instrucción típica seria la suma,
como ejemplo;
ADD M, N, P
Esta instrucción significa “sumar el numero contenido en M al numero almacenado en N y
situar el resultado en P, o sea, ( P = M + N ).
Los inconvenientes más notables de este lenguaje ensamblador son:
o
o
Depende totalmente de la máquina, lo que impide transportar los programas.
Formación de los programadores es más compleja que la correspondiente a
los programadores de alto nivel, ya que les exige no solo técnicas, sino
también el conocimiento interno del la computadora.
3.4. Lenguajes de alto nivel
Estos son los más usados por los programadores en la actualidad. Están diseñados para que las
personas escriban y entiendan los programas de un modo mucho más sencillo, que los
lenguajes maquina y ensamblador. Los programas escritos en este lenguaje de alto nivel
pueden ser transportados a cualquier otro equipo ya que no dependen del mismo para
funcionar.
Las ventajas de los lenguajes de alto nivel.
o
o
o
o
o
Formación de los programas es más rápida, se requiere menor tiempo.
La escritura es parecida el lenguaje humano. Ejemplo instrucciones como
Write, Read, Print, etc.
Las modificaciones y puestas a punto son más fáciles.
Reducción del coste de los programas.
Transportabilidad de los mismos.
2
Las desventajas que podemos encontrar en este son:
o
o
o
o
Incremento de tiempo de puesta a punto.
No se aprovechan los recursos internos de los equipos.
Aumento del uso de memoria.
El tiempo de ejecución de los programas es mucho mayor.
Los programas fuentes tiene que ser traducidos, en este caso por medio de un compilador o un
interpretador. Entre los lenguajes de programación de alto nivel, podemos encontrar los
siguientes:
Los lenguajes de programación de alto nivel se reducen a:
C
C++
COBOL
FORTRAN
BASIC
PASCAL
VISUAL BASIC
JAVA
Se están extendiendo:
CLIPPER
ADA
MODULA-2
PROLOG
LISP
SMALLTALK
Y comienzan a bifurcarse
VISUAL OBJECT
DELPHI
MIRADA
EIFFEL
3.5. Traductores de lenguajes.
Los traductores son programas que traducen el programa fuente en lenguaje maquina, para
ser entendida por la computadora. Estos se dividen en:
o
o
Compiladores
Interpretadores.
3.5.1. Interpretadores
Estos son un traductor que toma un programa fuente, lo traduce y a continuación lo ejecuta.
Ejemplos: BASIC.
3.5.2. Compiladores
Un compilador es un programa que traduce los programas fuente escritos en lenguaje de alto
nivel –Pascal, FORTRAN, etc . –a lenguaje máquina. Los lenguajes compiladores típicos son: C,
C++, PASCAL, FORTRAN, COBOL, etc.
3
3.6. La compilación y sus fases.
La compilación es el proceso de traducción de programas fuentes a programas objetos. El
programa objeto obtenido de la compilación ha sido traducido normalmente a código
máquina.
Para conseguir el programa máquina real se debe utilizar un programa llamado montador o
enlazador (linker). El proceso de montaje conduce a un programa en lenguaje máquina
directamente ejecutable.
PROGRAMA FUENTE
COMPILADOR
(TRADUCTOR)
FASE DE LA
COMPILACION
PROGRAMA OBJETO
MONTADOR
Nota: Este es un proceso
intermedio del compilador,
el proceso no lo vemos, es
interno de la máquina
PROGRAMA
EJECUTABLE EN
LENGUAJE MAQUINA
EL proceso de ejecución de un programa Pascal, por ejemplo, tiene los siguientes pasos:
1234567-
Escritura del código fuente con un editor (Programa de programación).
Introducir el programa en memoria.
Compilar el programa con el compilador Pascal.
Verificar y corregir errores de compilación (listado de errores).
Obtención del programa objeto.
El montador obtiene el programa ejecutable.
Se ejecuta el programa y, si no existen errores, se tendrá salida del programa.
4
El proceso de ejecución sería el siguiente:
Programa
Fuente
Programa
COMPUTADORA
Compilador
Datos
programa
ejecutable
Si
Resultados
Existen errores
en la
compilación
No
Programa
Montador
Programa
Ejecutable
Ejecución
Fase de la Ejecución de un Programa
5
Descargar