Information

Deadline No deadline
Submission limit No limitation

Sign in

TP5 - ASM a trou 2

Voici un code en ASM qui enregistre qui calcule la division entière de x par y et mets le résultat dans a:

@a
M=0  // On set a à 0

@y
D=M
@FINI
D;{1}  // Si y == 0, la division est impossible, on va à la fin

@x
D=M  // On met la valeur de x dans le registre D

(DIVISION)

    @y
    D=D-M  // On retire une fois y à x

    @FINI
    D;{2} // Si D est plus petit ou égal à zero, on a fini

    @a
    M=M+1   // Sinon on peut retirer y une fois de plus

    @DIVISION
    0;{3}  // On recommence

(FINI)

Question 1:

Quel instruction doit-on mettre à la place de {1} pour que ce code fonctionne?

Question 2:

Quel instruction doit-on mettre à la place de {2} pour que ce code fonctionne?

Question 3:

Quel instruction doit-on mettre à la place de {3} pour que ce code fonctionne?