PDA

View Full Version : [Assembler] Programma ricorsivo per divisione


MinaVagante
12-02-2009, 12:18
Ciao a tutti,
il seguente programma esegue la divisione tra 10 e 3 contenuti rispettivamente in R1 e in R2:

START: LDWI R15 0E000
SPWR R15
LDWI R1 0A
LDWI R2 3
PUSH R1
PUSH R2
CALL DIVR
POP R2
POP R1
HLT
DIVR: SUB R2 R1
JMPN RET0
CALL DIVR
INC R0
RET
RET0: LDWI R0 0


RET


non riesco a capire perchè, quando R1 diviene negativo, al terzo giro che vale -1, si salta a RET0 che pone a 0 R0, e poi si torna a INC R0. Perchè torna a INCR0?? Nel salto mica c'è qualche condizione che lo fa tornare indietro??? :confused:
grazie

MinaVagante
12-02-2009, 15:10
Non serve ho capito :D