Pregunta 1 • Tomando en cuenta la secuencia de microinstrucciones (en lenguaje MAL) MAR=SP-1;rd MAR=SP H=MDR;wr MDR=TOS MAR=SP-1;wr TOS=H;goto Main1
Responda: ¿Que operación (a nivel ISA) realiza? Intercambia las dos palabras en el tope de la pila ¿Tiene operandos de entrada? Indique en caso afirmativo. No (Si, las dos palabras del tope de la pila) ¿Se genera un resultado? Indique donde se almacena en caso afirmativo. No (Si, en las dos palabras del tope de la pila)
Pregunta 2 • Diseñe una instrucción (a nivel ISA) para Mic1 que saque las dos palabras en el tope de la pila y almacene su diferencia (use lenguaje MAL). MAR=SP=SP-1;rd H=TOS H=MDR;wr TOS=MDR=MDR-H;wr goto Main1
Pregunta 3 • Escriba una secuencia de micro-código para Mic1 que saque cinco palabras de la pila y meta cero (“0”) en la misma
SP
… … … … … … …
Estado Inicial SP=SP-1 SP=SP-1 SP=SP-1 MDR=0 MAR=SP=SP-1;wr
SP
… … … … … … …
Sacar 5 palabras
SP
… … … … … 0x00000000 …
Meter “0”
Pregunta 4 • Tomando en cuenta la secuencia de microinstrucciones (en lenguaje MAL) MAR MDR MAR MDR MAR MDR
Pregunta 7.h • Indique cual micro-instrucción se puede realizar en el camino de datos del Mic1: – – – – –
H = OPC = OPC + H + 1 MAR = SP = SP+1; wr; goto (MBR) MBR=OPC+TOS;rd MBR=H+TOS;wr PC=MAR+1;fetch
Pregunta 7.i • El nivel del conjunto de instrucciones (ISA) •
•
•
•
•
Permite a los desarrolladores de hardware relacionarse con los desarrolladores de software Es el intermediario entre el nivel de lógica digital y el nivel de software (o nivel de lenguaje de alto nivel) Esta basado en instrucciones con un modelo de memoria igual para cada maquina Permite mantener la compatibilidad hacia atrás mientras cambiamos el nivel de micro-arquitectura Se considera la interfaz entre el hardware y el software
Pregunta 7.j • En el nivel del conjunto de instrucciones (ISA) el modelo de memoria – Tiene un bloque de variables locales que se manejan mediante el registro SP – Tiene registros especiales y generales – La memoria se direcciona usando el registro MDR – Tiene un espacio para los operandos Pila de operandos actual 3
SP
Marco de variables locales actual 3
LV Marco de variables locales 2 Reserva de constantes CPP
Marco de variables locales 1
Área de métodos PC
Pregunta 7.k • Los operandos de las instrucciones (a nivel ISA) se almacenan en – – – –
El área de variables locales La pila En el stack En el área de métodos SP