Lenguaje Ensamblador

Páginas: 42 (10459 palabras) Publicado: 8 de mayo de 2013
CONCEPTOS BASICOS.

1.1.- EL LENGUAJE DE MAQUINA Y EL LENGUAJE ENSAMBLADOR.
 
                                       Todo procesador, grande o pequeño, desde el de una calculadora hasta el de un supercomputador, ya sea de propósito general o específico, posee un lenguaje único que es capaz de reconocer y ejecutar. Por razones que resultan obvias, este lenguaje ha sido denominado Lenguaje deMáquina y más que ser propio de un computador pertenece a su microprocesador.  El lenguaje de máquina 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 números que  representan las operaciones que realiza el microprocesador a través de su circuitería interna. Estas instrucciones, pordecirlo así, están grabadas o "alambradas" en el hardware y no pueden ser cambiadas. El nivel más bajo al que podemos aspirar a llegar en el control de un microprocesador es precisamente el del lenguaje de máquina.
 
   Ahora bien, siendo el lenguaje de máquina un conjunto de números, ¿cómo es capaz el microprocesador de saber cuándo un número representa una instrucción y cuándo un dato? Elsecreto de esto reside en la dirección de inicio de un programa y en el estado del microprocesador. La dirección 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 cuándo éste espera una instrucción y cuándo éste espera un dato.
 
   Obviamente, el lenguaje demáquina 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 máquina propio y soporta el código generado para microprocesadores anteriores de la misma serie (desde un 8086 hasta un 80386). Por otra parte, un PowerPC es capaz de ejecutarinstrucciones de los microprocesadores Motorola 68xxx y de los Intel 80xx/80x86. En ambos casos, el diseño 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 código de un 80186 o superiores, ya que los procesadores másavanzados poseen juegos de instrucciones y registros nuevos no contenidos por un 8088. Un caso similar es la serie 68xxx, pero de ninguna manera podemos esperar que un Intel ejecute código de un Motorola y viceversa. Y esto no tiene nada que ver con la compañía, ya que Intel desarrolla otros tipos de microprocesadores como el 80860 y el iWARP, los cuales no pueden compartir código ni entre ellos nientre los 80xx/80xxx.
 
   Ahora bien, mientras que con el lenguaje de máquina, nosotros obtenemos un control total del microprocesador, la programación en este lenguaje resulta muy difícil y fácil para cometer errores. No tanto por el hecho de que las instrucciones son sólo números, sino porque se debe calcular y trabajar con las direcciones de memoria de los datos, los saltos y lasdirecciones de llamadas a subrutinas, además 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 código. Para facilitar la elaboración de programas a este nivel, se desarrollaron losEnsambladores y el Lenguaje Ensamblador.
    Existe una correspondencia 1 a 1 entre las instruccionesdel lenguaje de máquina y las del lenguaje ensamblador. Cada uno de los valores numéricos del lenguaje de máquina tiene una representación simbólica de 3 a 5 letras como instrucción del lenguaje ensamblador. Adicionalmente, este lenguaje proporciona un conjunto de pseudo-operaciones  (también conocidas como directivas del ensamblador) que sirven para definir datos, rutinas y todo tipo de...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Lenguaje Ensamblador
  • Lenguaje ensamblador
  • Lenguaje ensamblador
  • Lenguaje ensamblador
  • Lenguaje ensamblador
  • Lenguaje ensamblador
  • Lenguaje ensamblador
  • Qué es el lenguaje ensamblador

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS