Information

Deadline 29/03/2024 12:00:00
Submission limit No limitation

Sign in

TP5 - Les fonctions 6

Le simulateur est disponible ici : http://asm.info.ucl.ac.be/ Vous pouvez trouver le syllabus ici : https://sites.uclouvain.be/LSINC1102/pfo/introduction.html


Appel à une fonction

Vous devez récupérer les arguments passés à votre fonction. Vous ne pouvez pas utiliser directement les variables déclaré avec DB

Dans cet exercice, il vous est demandé d'écrire une fonction func, qui permet de déterminer si un tableau est trié ou non. Cette fonction prend deux arguments un tableau "tab" ainsi que sa longueur "len". La fonction doit renvoyer 1 si le tableau est trié et 0 sinon.

Les tests INGInious vont initialiser les variables de la façon suivante :

; Les registres B et C sont utilisé, leur valeur doit être inchangée après exécution de la fonction
MOV B, [rb]
MOV C, [rc]
MOV D, tab
PUSH [len]
CALL func
HLT
func: ; Le label func est déja déclaré pour vous
; ====> Votre code sera inséré ici par INGINIOUS  <=====
; Ajouté par INGINIOUS pour les tests
len: DB "?"
tab: DB "?"
DB "?"
DB "?"
DB "?"
...
rb: DB "?"
rc: DB "?"