Sunteți pe pagina 1din 3

Caracteristicas de los lenguajes ensambladores.

Todo procesador, grande o pequeo, desde el de una calculadora hasta el de un supercomputador, ya sea de propsito general o especfico, posee un lenguaje nico que es capaz de reconocer y ejecutar. Por razones que resultan obvias, este lenguaje ha sido denominado Lenguaje de Mquina y ms que ser propio de un computador pertenece a su microprocesador. El lenguaje de mquina est compuesto por una serie de instrucciones, que son las nicas que pueden ser reconocidas y ejecutadas por el microprocesador. Este lenguaje es un conjunto de nmeros que representan las operaciones que realiza el microprocesador a travs de su circuitera interna. Estas instrucciones, por decirlo as, estn grabadas o "alambradas" en el hardware y no pueden ser cambiadas. El nivel ms bajo al que podemos aspirar a llegar en el control de un microprocesador es precisamente el del lenguaje de mquina.

Ahora bien, siendo el lenguaje de mquina un conjunto de nmeros, cmo es capaz el microprocesador de saber cundo un nmero representa una instruccin y cundo un dato? El secreto de esto reside en la direccin de inicio de un programa y en el estado del microprocesador. La direccin de inicio nos indica en qu localidad de memoria comienza un programa, y en consecuencia que datos deberemos considerar como instrucciones. El estado del microprocesador nos permite saber cundo ste espera una instruccin y cundo ste espera un dato.

Obviamente, el lenguaje de mquina de un microprocesador no puede ser ejecutado por otro microprocesador de arquitectura distinta, a menos que haya cierto tipo de compatibilidad prevista. Por ejemplo, un 80486 es capaz de ejecutar lenguaje de mquina propio y soporta el cdigo generado para microprocesadores anteriores de la misma serie (desde un 80x86 hasta un 80386). Por otra parte, un PowerPC es capaz de ejecutar instrucciones de los microprocesadores Motorola 68000 y de los Intel 80xx/80x86. En ambos casos, el diseo de los microprocesadores se hizo tratando de mantener cierto nivel de compatibilidad con los desarrollados anteriormente. En el segundo caso, este nivel de compatibilidad se extendi a los de otra marca. Sin embargo, un 8088 no puede ejecutar cdigo de un 80186 o superiores, ya que los procesadores ms

avanzados poseen juegos de instrucciones y registros nuevos no contenidos por un 8088.

Un caso similar es la serie 68000, pero de ninguna manera podemos esperar que un Intel ejecute cdigo de un Motorola y viceversa. Y esto no tiene nada que ver con la compaa, ya que Intel desarrolla otros tipos de microprocesadores como el 80860 y el iWARP, los cuales no pueden compartir cdigo ni entre ellos ni entre los 80xx/80xxx.

Ahora bien, mientras que con el lenguaje de mquina, nosotros obtenemos un control total del microprocesador, la programacin en este lenguaje resulta muy difcil y fcil para cometer errores. No tanto por el hecho de que las instrucciones son slo nmeros, sino porque se debe calcular y trabajar con las direcciones de memoria de los datos, los saltos y las direcciones de llamadas a subrutinas, adems de que para poder hacer ejecutable un programa, se deben enlazar las rutinas de run-time y servicios del sistema operativo.

Este proceso es al que se le denomina ensamblado de cdigo. Para facilitar la elaboracin de programas a este nivel, se desarrollaron los Ensambladores y el Lenguaje Ensamblador.

Existe una correspondencia 1 a 1 entre las instrucciones del lenguaje de mquina y las del lenguaje ensamblador. Cada uno de los valores numricos del lenguaje de mquina tiene una representacin simblica de 3 a 5 letras como instruccin del lenguaje ensamblador. Adicionalmente, este lenguaje proporciona un conjunto de pseudo-operaciones (tambien conocidas como directivas del ensamblador) que sirven para definir datos, rutinas y todo tipo de informacin para que el programa ejecutable sea creado de determinada forma y en determinado lugar.

Lenguaje de maquinas
El lenguaje mquina es el nico que entiende directamente la computadora, ya que esta escrito en lenguajes directamente inteligibles por la mquina (computadora), utiliza el

alfabeto binario, que consta de los dos nicos smbolos 0 y 1, denominados bits (abreviatura inglesa de dgitos binarios). Sus instrucciones son cadenas binarias (cadenas o series de caracteres de dgitos 0 y 1) que especifican una operacin y, las posiciones (direccin) de memoria implicadas en la operacin se denominan instrucciones de mquina o cdigo maquina. Fue el primer lenguaje utilizado en la programacin de computadoras, pero dejo de utilizarse por su dificultad y complicacin, siendo sustituido por otros lenguajes ms fciles de aprender y utilizar, que adems reducen la posibilidad de cometer errores. El lenguaje mquina es el conocido cdigo binario. Generalmente, en la codificacin de los programas se empleaba el sistema hexadecimal para simplificar el trabajo de escritura. Todas las instrucciones preparadas en cualquier lenguaje mquina tienen por lo menos dos partes. La primera es el comando u operacin, que dice a las computadoras cual es la funcin que va a realizar. Todas las computadoras tienen un cdigo de operacin para cada una de las funciones. La segunda parte de la instruccin es el operando, que indica a la computadora donde hallar o almacenar los datos y otras instrucciones que se van a manipular, el nmero de operndoos de una instruccin varia en distintas computadoras.

Ventajas del lenguaje mquina: posibilidad de cargar (transferir un programa a la memoria) sin necesidad de traduccin posterior, lo que supone una velocidad de ejecucin superior a cualquier otro lenguaje de programacin.

Desventajas del lenguaje mquina: dificultad y lentitud en la codificacin. Poca fiabilidad. Gran dificultad para verificar y poner a punto los programas. Los programas solo son ejecutables en el mismo procesador (CPU). En la actualidad, las desventajas superan a las ventajas, lo que hace prcticamente no recomendables a los lenguajes mquina.

S-ar putea să vă placă și