miércoles, 19 de junio de 2013

Lenguaje de bajo nivel, lenguaje ensamblador y lenguaje de alto nivel


Los principales tipos de lenguajes utilizados son tres:
  • Lenguaje Máquina.
  • Lenguaje de Bajo Nivel (ensamblador).
  • Lenguajes de Alto Nivel.

LENGUAJE MÁQUINA


Son aquéllos que están escritos en lenguajes directamente inteligibles para el humano pero para la máquina (computadora) si, ya que sus instrucciones son cadenas binarias (cadenas o series de caracteres de dígitos 0 y 1) que especifican una operación y las posiciones (dirección) de memoria implicadas en la operación se denominan instrucciones de máquina o código máquina. El código máquina es el conocido código binario.

Las instrucciones en lenguaje máquina dependen del hardware de la computadora y, por tanto, diferirán de una computadora a otra.

Ventajas del Lenguaje Máquina
  1. Posibilidad de cargar (tranferir un programa a la memoria) sin necesidad de traducción posterior, lo que supone una velocidad de ejecución superior a cualquier otro lenguaje de programación.
Desventajas del Lenguaje Máquina
  1. Dificultad y lentitud en la codificación.
  2. Poca fiabilidad.
  3. Gran dificultad para verificar y poner a punto los programas.
  4. Los programas solo son ejecutables en el mismo procesador (CPU).
En la actualidad, las desventajas superan a las ventajas, lo que hace prácticamente no recomendables a los lenguajes máquinas.


LENGUAJES DE BAJO NIVEL


Son más fáciles de utilizar que los lenguajes máquina, pero al igual que ellos, dependen de la máquina en particular. El lenguaje de bajo nivel por excelencia es el ensamblador. Las instrucciones en lenguaje ensamblador son instrucciones conocidas como nemotécnicos. Por ejemplo, nemotécnicos típicos de operaciones aritméticas son : en inglés : ADD, SUB, DIV, etc. ; en español : SUM, RES, DIV, etc.

Una instrucción típica de suma sería :

ADD M, N, P

Esta instrucción significa "sumar el contenido en la posición de memoria M al número almacenado en la posición de memoria N y situar el resultado en la posición de memoria P" . Evidentemente es más sencillo recordar la instrucción anterior con un nemotécnico que su equivalente en código máquina.

0110 1001 1010 1011

Un programa escrito en lenguaje ensamblador, requiere de una fase de traducción al lenguaje máquina para poder ser ejecutado directamente por la computadora.

El programa original escrito en lenguaje ensamblador se denomina programa fuente y el programa traducido en lenguaje máquina se conoce como programa objeto, el cual ya es directamente entendible por la computadora.

Ventajas del lenguaje ensamblador frente al lenguaje máquina
  1. Mayor facilidad de codificación y, en general, su velocidad de cálculo.
Desventajas del lenguaje ensamblador
  1. Dependencia total de la máquina lo que impide que  se pueda transportar  los programas o la posibilidad de ejecutar un programa en diferentes máquinas. El lenguaje ensamblador del PC es distinto del lenguaje ensamblador del Apple Machintosh.
  2. La formación de los programadores es más compleja que la correspondiente a los programadores de alto nivel, ya que exige no solo las técnicas de programación, sino también el conocimiento del interior de la máquina.
  3. Los lenguajes ensamblador tienen sus aplicaciones muy reducidas, se centran básicamente en aplicaciones de tiempo real, control de procesos y de dispositivos electrónicos.

LENGUAJES DE ALTO NIVEL


Estos lenguajes son los más utilizados por los programadores. Están diseñados para que las personas escriban y entiendan los programas de un modo mucho más fácil que los lenguajes máquina y ensambladores. Un programa escrito en lenguaje de alto nivel es independiente de la máquina (las instrucciones no dependen del diseño del hardware o de una computadora en particular), por lo que estos programas son portables o transportables. Los programas escritos en lenguaje de alto nivel pueden ser ejecutados con poca o ninguna modificación en diferentes tipos de computadoras.

Ventajas de los lenguajes de alto nivel
  1. El tiempo de formación de los programadores es relativamente corto comparado con otros lenguajes.
  2. La escritura de programas se basa en reglas sintácticas similares a los lenguajes humanos. Nombres de las instrucciones tales como READ, WRITE, PRINT, OPEN, etc.
  3. Las modificaciones y puestas a punto de los programas son más fáciles.
  4. Reducción del coste de los programas.
  5. Se pueden transportar de máquina a máquina.
Desventajas de los lenguajes de alto nivel
  1. Incremento del tiempo de puesta a punto al necesitarse diferentes traducciones del programa fuente para conseguir el programa definitivo.
  2. No se aprovechan los recursos internos de la máquina que se explotan mucho mejor en lenguajes máquina y ensambladores.
  3. Aumento de la ocupación de memoria.
  4. El tiempo de ejecución de los programas es mucho mayor.
 

No hay comentarios:

Publicar un comentario