Information

Author(s) Nikita Tyunyayev, Aurélien Buchet
Deadline 26/03/2025 12:00:00
Submission limit 5 submissions
every 1 hour(s)
Category tags Semaine 5

Tags

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 "?"