Practico 1-Ej5-b,c - Comparar Solución

Practico 1-Ej5-b,c - Comparar Solución

de Usuario eliminado -
Número de respuestas: 2

Para comparar soluciones con alguien que lo haya hecho.

AC <- M[addr]

mar:= band(tir, amask);rd

rd

ac:= mbr

3 ciclos

M[addr] <- AC

mar:= band(tir, amask); mbr:= ac; wr

wr

2 ciclos

AC <- AC nand M[addr]

mar:= band(tir, amask); rd

rd

ac:= band(mbr, ac)

ac:= inv (ac)

4 ciclos

SP<- SP-1; M[SP]<-AC

sp:= sp + (-1)

mar:= sp; mbr:= ac; wr

wr

3 ciclos

AC<- M[SP]; SP<-SP+1

mar:=sp; rd

rd; sp:= sp + (-1)

ac:= mbr

3 ciclos

AC <- AC + M[addr]

mar:= band(tir, amask); rd

rd

ac:= mbr + ac

3 ciclos

AC<- AC - M[addr]

mar:= band(tir, amask); rd

rd

mbr:= inv(mbr)

ac:= mbr + ac

4 ciclos

 

En respuesta a Usuario eliminado

Re: Practico 1-Ej5-b,c - Comparar Solución

de Diego Ricardo Perez Bernardi -

Salvo por algún orden, me quedó igual.

* Ahora que veo, es correcto hacer mar:= band(tir, amask) ?

O habría que guardar en un registro auxiliar, y luego en mar?

En respuesta a Diego Ricardo Perez Bernardi

Re: Practico 1-Ej5-b,c - Comparar Solución

de Usuario eliminado -

Si tenés razón, no se puede hacer directamente mar:= band(tir, amask) porque desde la ALU no se puede grabar en MAR.Habría que grabar un registro, y luego enviarlo por el bus B en el siguiente ciclo.


Muchas gracias.