Primero el lenguaje de bajo nivel es aquel que la parte física de la computadora o hardware puede interpretar, siendo asi el hardware solo reconoce datos de tipo Binario osea datos constituidos por 0 y 1 que no son mas que representaciones de tensiones comprendidas entre 0 y 4.0 voltios y entre 4 y 5 voltios, respectivamente.
La información q hace que el hardware realice ciertas acciones se llama instrucción, estas instrucciones son ejecutadas directamente por la maquina.
Este lenguaje máquino fue el primero utilizado por el hombre, un jemplo de lenguaje maquina seria el siguiente:
011011001010010011110110
Esta instrucción es facilmente interpretada por la máquina, pero por nosotros no creo, ahora imaginense un programa con miles de instruccions asi verdaderamente dificil de entender verdad?¿?¿ (Yo que comienzo no me lo quiero imaginar)
Tan solo si supieramos que la instrucción de arriba indica lo siguiente: <<Traslade el contenido de la posición de memoria X a la posición de memoria Y.>> todo sería mas sencillo pues estamos utilizando el lenguaje Humano.
Es así que surge la necesidad de Traductores que no serían otra cosa que programitas en la maquina que se encragarán de convertir las instrucciones dadas por nosotros a 0 y 1 y viceversa.
Así que surgen los lenguajes ensambladores (Assembler) que facilitaron la labor a los programadores
La anterior instrucción se podría escribir de la siguiente forma: TRASLADAR POS-A POS-B ¡¡¡¡mucho mas sencillo no creen!!!!!
La diferencia que radica entre los lenguajes de alto nivel (Basic, Pascal, Cobol, etc., ) y los de bajo nivel como el ASSEMBLER son en que en los primeros los programadores no tienen que reconocer el HARDWARE de la máquina.