cimmiv
25-01-2015, 11:11
A giorno dovrò sostenere l'esame di architettura e dalle esercitazioni prese dal libro mi sono imbattuto su questo esercizio :
Scrivere i sottoprogramma assembly che eseguono le strutture indicate di seguito:
1- IF bit 3 di X=1
then (locazione di memoria ($8202 + contenuto della locazione $8110))=D0 * D3
else (locazione di memoria ($8110 + contenuto della locazione $8202))=D1 OR D4
io l'ho cosi implementato :
org $8000
START MOVEM A0/A1,-(SP)
LEA $8202,A0
LEA $8110,A1
JSR SUBR
MOVEM (SP)+,A0/A1
STOP #$2700
ORG $8400
SUBR MOVEM D0,-(SP)
MOVEM D1,-(SP)
MOVEM D3,-(SP)
MOVEM D4,-(SP)
BTS #3,X
BEQ ELSE
ADD (A0),A1
MULU D0,D3
MOVE D3,(A0)
ELSE ADD(A0),A1
OR D1,D4
MOVE D4,(A1)
MOVEM (SP)+,D4
MOVEM (SP)+,D3
MOVEM (SP)+,D1
MOVEM (SP)+,D0
RTS
ORG $8800
X DC.B 5
Scrivere i sottoprogramma assembly che eseguono le strutture indicate di seguito:
1- IF bit 3 di X=1
then (locazione di memoria ($8202 + contenuto della locazione $8110))=D0 * D3
else (locazione di memoria ($8110 + contenuto della locazione $8202))=D1 OR D4
io l'ho cosi implementato :
org $8000
START MOVEM A0/A1,-(SP)
LEA $8202,A0
LEA $8110,A1
JSR SUBR
MOVEM (SP)+,A0/A1
STOP #$2700
ORG $8400
SUBR MOVEM D0,-(SP)
MOVEM D1,-(SP)
MOVEM D3,-(SP)
MOVEM D4,-(SP)
BTS #3,X
BEQ ELSE
ADD (A0),A1
MULU D0,D3
MOVE D3,(A0)
ELSE ADD(A0),A1
OR D1,D4
MOVE D4,(A1)
MOVEM (SP)+,D4
MOVEM (SP)+,D3
MOVEM (SP)+,D1
MOVEM (SP)+,D0
RTS
ORG $8800
X DC.B 5