Tipos de lenguajes de Bajo Nivel





Un lenguaje de programacion de bajo nivel es el que proporciona un set de instrucciones aritmeticológicas sin la capacidad de encapsular dichas instrucciones en funciones que no estén ya contempladas en la arquitectura del hardware.
Dicho lenguaje es muy simple o nada complicado, pero estructurar programas a ese nivel es muy difícil. Dado que este lenguaje viene dado por las especificaciones técnicas del hardware, no permite una abstracción fuera de lo estipulado para el microprocesador de un ordenador. Consecuentemente, es fácilmente trasladado a lenguaje de maquina.

La estructura de los lenguajes son como sigue:

Lenguaje Máquina: Las invocaciones a memoria, como los procesos aritmético lógicos son posiciones literales de conmutadores físicos del hardware en su representación booleana. Estos lenguajes son literales de tareas.

Lenguajes de bajo nivel: Son instrucciones que ensamblan los grupos de conmutadores necesarios para expresar una mínima lógica aritmética. Están intimamente vinculados al hardware. Por norma general están disponibles a nivel firmware, cmos o chip set. Estos lenguajes estan orientados a procesos. Los procesos se componen de tareas. Contienen tantas instrucciones como la arquitectura del hardware así haya sido diseñada. 

Lenguajes de medio nivel: Son aquellos que, basandose en los juegos de instrucciones disponibles (chip set), permiten el uso de funciones a nivel aritmético, pero a nivel lógico dependen de literales en esamblador. Estos lenguajes estan orientados a procedimientos. Los procedimientos se componen de procesos.

Ejemplos: C, Basic. 

Lenguajes de alto nivel: Son aquellos que permiten una máxima flexibilidad al programador a la hora de abstraerse o de ser literal. Permiten un camino bidireccional entre el lenguaje máquina y una expresión casi oral entre la escritura del programa y su posterior compilación. Estos lenguajes estan orientado a objetos. Los objetos se componen de propiedades cuya naturaleza emerge de procedimientos.

Ejemplos: C++, Fortran, Cobol, Lisp. 

Lenguajes de aplicaciones: Son aquellos que no permiten una bidireccionalidad conceptual entre el lenguaje máquina y los lenguajes de alto nivel, ni tampoco la literalidad a la hora de invocar conceptos lógicos. Se basan en librerias creadas en lenguajes de alto nivel. Pueden permitir la creacion de nuevas librerias, pero son propietarias y dependientes de las suministradas por la aplicación. Estos lenguajes estan orientados a eventos. Los eventos acontecen cuando las propiedades de un objeto interactuan con otro.

Ejemplos: Visual Basic para aplicaciones. 

Lenguajes de redes: Son aquellos que se basan en un convenio de instrucciones totalmente independientes de la máquina, y completamente dependientes de la red a la que están orientadas. Se dividen en descriptivos (HTML, XML, VML), de cliente-Servidor (Java, PHP) y de script.