Un lenguaje de alto nivel
permite al programador escribir las instrucciones de un programa utilizando
palabras o expresiones sintácticas muy similares al inglés. Por ejemplo, en C
se pueden usar palabras tales como: case, if, for, while, etc. para construir
con ellas instrucciones como:
if( numero > 0 ) printf(
"El número es positivo" )
que traducido al castellano
viene a decir que: si numero es mayor que cero, entonces, escribir por pantalla
el mensaje: "El número es positivo".
Ésta es la razón por la que
a estos lenguajes se les considera de alto nivel, porque se pueden utilizar
palabras de muy fácil comprensión para el programador. En contraposición, los
lenguajes de bajo nivel son aquellos que están más cerca del
"entendimiento" de la máquina. Otros lenguajes de alto nivel son:
Ada, BASIC, COBOL, FORTRAN, Pascal, etc.
Otra carácterística
importante de los lenguajes de alto nivel es que, para la mayoría de las
instrucciones de estos lenguajes, se necesitarían varias instrucciones en un
lenguaje ensamblador para indicar lo mismo. De igual forma que, la mayoría de
las instrucciones de un lenguaje ensamblador, también agrupa a varias
instrucciones de un lenguaje máquina.
![tipos de instrucciones](https://www.carlospes.com/minidiccionario/imagenes/fig_03_05_relacion_entre_instrucciones.gif)
Figura - Relación entre las
instrucciones de alto nivel, ensamblador y máquina.
Lenguaje de Bajo Nivel
Un lenguaje de programación
de características bajo nivel es aquel en el que sus instrucciones ejercen un
control directo sobre el hardware y están condicionados por la estructura
física de las computadoras que lo soportan. El uso de la palabra bajo en su
denominación no implica que el lenguaje sea menos potente que un lenguaje de
alto nivel, sino que se refiere a la reducida abstracción entre el lenguaje y
el hardware. Por ejemplo, se utiliza este tipo de lenguajes para programar
tareas críticas de los sistemas operativos, de aplicaciones en tiempo real o
controladores de dispositivos.
Lenguaje Intermedio
En ciencias de la
computación, un lenguaje intermedio es el lenguaje de una máquina abstracta
diseñada para ayudar a realizar el análisis de un programa informático. El
término proviene de su uso en compiladores, donde el código fuente de un
programa es traducido a un modo más apropiado para transformaciones de mejora
de código antes de generar el código objeto o código máquina para una máquina
determinada. El diseño del lenguaje intermedio difiere típicamente del lenguaje
de máquina de tres maneras fundamentales:
Cada instrucción representa
exactamente una operación fundamental; por ejemplo, los modos de
direccionamiento "shift-add" (desplazar y añadir) comunes en
microprocesadores no están presentes.
La información de la
estructura de control puede no estar incluida en el juego de instrucciones.
El número de registros
disponibles puede ser grande, incluso ilimitado.
Un formato popular para
lenguajes intermedios es el de código de tres direcciones.
El término también es usado
para referirse a lenguajes usados como intermedios por algunos lenguajes de
alto nivel que no crean código objeto o código máquina por sí mismos, sino que
solamente el lenguaje intermedio. Este lenguaje intermedio es enviado a un
compilador para tal lenguaje, que genera el código objeto o código máquina
finalizado. Esto se suele hacer para facilitar el proceso de optimización o
para incrementar la portabilidad mediante el uso de un lenguaje intermedio que
tenga compiladores para la mayoría de CPUs y sistemas operativos, como puede
ser C. Los lenguajes usados para esto tienen una complejidad que se sitúa entre
los lenguajes de alto y bajo nivel, como el lenguaje ensamblador.
No hay comentarios:
Publicar un comentario