Microensamblador del am29203

Solo disponible en BuenasTareas
  • Páginas : 9 (2081 palabras )
  • Descarga(s) : 0
  • Publicado : 10 de marzo de 2011
Leer documento completo
Vista previa del texto
INTRODUCCIÓN AL MICROENSAMBLADOR DEL Am29203
Cada microinstrucción está compuesta por varias microoperaciones que son ejecutadas en paralelo. El lenguaje definido por el Microensamblador Am29203 contiene un gran número de microoperaciones expresadas de forma simbólica, cuya intersección, mediante el operando ´&´ forma una microinstrucción completa. El microensamblador se encarga de traducir cadamicroinstrucción expresada en lenguaje simbólico a un conjunto de caracteres hexadecimales que pueden ser posteriormente cargados en la tarjeta y ser ejecutados.

Tipos de instrucciones
Por un lado tendremos las directivas que facilitan el trabajo del microcompilador (por ejemplo EQU, ORG). Los comentarios deben empezar por ; ignorándose el resto de la línea. Podremos utilizar etiquetas paradefinir posiciones de memoria sin necesidad de saber su localización exacta. Las etiquetas deben ir al principio de cada microinstrucción y pueden terminar adicionalmente en : No se podrán usar ninguna de las palabras reservadas por el microensamblador, como son los mnemónicos o los nombres de registros (.0, .1, .2,..., .F, RQ, IR, RC, PC, IRA, IRB). Ejemplo: LD RQ,#H10 ; hacemos el registro RQ=16CLR .5 ; ponemos el registro .5=0 etiqueta1: INC .5 ; incrementamos .5 hasta que sea igual a RQ CMP RQ,.5 & LD_UFL BUNZ etiqueta1 Por otro lado, tendremos las microinstrucciones propiamente dichas, que están compuestas por los mnemónicos definidos para la tarjeta y que son los que se compilan y ejecutan (para ver el conjunto de microinstrucciones disponible, mirar la ayuda de los programas,fichero AMDHELP.HLP, sección “Ayuda sobre el Microensamblador | Mnemónicos del Microensamblador”). Una microinstrucción puede estar compuesta de varias microoperaciones separadas cada una por un carácter ´&´ debiendo estar todas ellas escritas en la misma línea. Estas microoperaciones deben ser independientes unas de otras para que el procesador pueda ejecutarlas en paralelo. El microensamblador seencarga de verificar si no hay ninguna incompatibilidad de formato en cada microinstrucción. Debido a que hay campos que se superponen se debe tener cuidado de no utilizar microoperaciones que exijan valores diferentes para campos superpuestos. Es, por tanto, necesario que el programador conozca relativamente bien el formato de las microoperaciones para no caer en errores de compatibilidad de formatoen cada microinstrucción. NOP es una microoperación incompatible con las demás. HALT, LD_UFL y LD_MFL son microoperaciones compatibles con todas las demás.

Las constantes numéricas que se utilicen pueden ser expresadas en hexadecimal (H´3F), en decimal (D63 o simplemente 63) o en octal (Q77).

Registros del procesador Am29203
El procesador Am29203 posee 16 registros de propósito general ensu ALU. Estos registros de 16 bits son nombrados según la notación del IEEE por .0, .1, ..., .F. Estos registros se pueden emplear de dos formas distintas: como registro A o como registro B. Si un registro se utiliza como registro A sólo será accesible en operaciones de lectura y se podrá utilizar: - como dirección de memoria - como operando de la ALU. Si un registro se utiliza como registro Bserá accesible tanto en lectura como en escritura pero no se podrá utilizar como dirección de memoria. Se podrá utilizar: - para almacenar el resultado de una operación de la ALU - para almacenar el contenido de otro registro - para almacenar el contenido de una posición de memoria - como operando de la ALU. Además de estos registros, la ALU tiene otro registro interno de 16 bits que denotamos por RQ(registro Q). Este registro es accesible tanto en lectura como en escritura y se puede utilizar: - como operando de una microoperación - para almacenar el resultado de una microoperación - para almacenar el contenido de otro registro - para ser cargado directamente por una constante numérica

El procesador además cuenta con un registro de instrucción (IR) de 16 bits que se encarga de...
tracking img