Un lenguaje de bajo nivel es el que proporciona poca o ninguna abstracción del microprocesador de un ordenador. Consecuentemente es fácilmente trasladado a lenguaje de máquina.
La palabra "bajo" no implica que el lenguaje sea inferior a un lenguaje de alto nivel; se refiere a la reducida abstacción entre el lenguaje y el hardware.
Los lenguajes de bajo nivel son mas 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.Un programa escrito en lenguaje ensamblador no puede ser ejecutado directamente por la computadora en esto se diferencia esencialmente del lenguaje máquina, sino que requiere una fase de traducción al lenguaje máquina.
El programa original escrito en lenguaje ensamblador se denomina programa fuente y el programa traducido en lenguaje máquina se conoce como programa objeto, ya directamente entendible por la computadora.
El traductor de programas fuente a objeto es un programa llamado ensamblador, existente en casi todos los computadores.
Programa fuente en ensamblador
(assembly)
Programa Ensamblador
(assembler)
Programa objeto en código
máquina.
No se debe confundir el programa ensamblador, encargado de efectuar la traducción del programa fuente escrito a lenguaje máquina, con el lenguaje ensamblador, lenguaje de programación con una estructura y gramática definidas.
Ensamblador
El término ensamblador (del inglés assembler) se refiere a un tipo de programa informático que se encarga de traducir un fichero fuente scrito en un lenguaje ensamblador, a un fichero objeto que contiene un código máquina ejecutable directamente por la máquina para la que se ha generado. El propósito para el que se crearon este tipo de aplicaciones es la de facilitar la escritura de programas, ya que escribir directamente en código binario, que es el único código entendible por la computadora, es en la práctica imposible. La evolución de los lenguajes de programación a partir del lenguaje ensamblador originó también la evolución de este programa ensamblador hacia lo que se conoce como programa compilador.
Compilador
Un compilador es un programa que traduce los programas fuente escritos en lenguajes de alto nivel: Pascal,FORTRAN, etc; a lenguaje máquina.
Los programas escritos en lenguajes de alto nivel se llaman programa fuente y el programa traducido se le llama programa objeto ó código objeto. El compilador traduce sentencia a sentencia el programa fuente.
Lenguajes compiladores típicos son: Pascal, FORTRAN, COBOL..., hoy día es posible encontrar tambiénversiones de compiladores BASIC y de C.
La compilación es el proceso de traducción de programas fuente a programas objeto.
Programa Fuente.
Compilador.
Programa Objeto.
El programa objeto obtenido de la compilación no ha sido traducido normalmente a código máquina sino a ensamblador. 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).
Programa Objeto.
Montador.
Programa ejecutable en lenguaje máquina.