Académique Documents
Professionnel Documents
Culture Documents
Prénom: Signature:
5000 00 03
5002 53 76
5004 16 82
5006 74 31
Sortie: aucun changement, puisque l’élément ($1682) est déjà dans la liste en $5004.
1/7
Ecrire le programme assembleur correspondant aux spécifications précédentes.
2/7
NOM: Semestre:
Prénom: Signature:
II.1 Ecrire avec commentaires le programme principal PP contenant le chargement en pile des 3
arguments d’entrée (Vec1, Vec2 et RESULT) et l’appel du sous-programme PSCAL.
Assembleur Commentaires
PP:
3/7
II.2 Donner le schéma de la pile après l’appel du sous-programme PSCAL, sachant que le registre
SP vaut $3FFE au début du programme principal PP : on indiquera la place des 3 arguments
d’entrée (Vec1, Vec2 et RESULT) dans la pile et la valeur de SP après l’appel de PSCAL dans le
programme principal PP.
II.3 Le sous-programme PSCAL devra sauvegarder dans la pile les registres de donnée et d'adresse
utilisés dans le sous-programme; il devra aussi comporter une boucle. D’autre part, on utilisera
l’instruction EMULS qui fait le produit des registres Y et D et qui donne le résultat sur 32 bits dans Y :
D (partie haute dans Y, partie basse dans D).
Écrire avec commentaires le programme assembleur du sous-programme PSCAL.
Assembleur Commentaires
PSCAL:
4/7
NOM: Semestre:
Prénom: Signature:
Le clavier permet à l’utilisateur de rentrer un code de 3 digits hexadécimaux (12 bits) qui, quand
l’utilisateur le valide, en appuyant sur le bouton de validation en dessous du clavier, est positionné
sur 12 bits des ports H et J (PTH0-7=partie basse du Code + PTJ0-3=partie haute du Code).
L’appui sur le bouton de validation du code génère un front montant sur la ligne PTP0, qui doit
déclencher une interruption.
Cette interruption (programme d’adresse $3000) doit permettre de tester, à partir de la table de
codes admis, si le code entré correspond à un des 4 codes admis. Cette comparaison se fait grâce à
un sous-programme, SP Compare, qui a, comme argument d’entrée, le Code positionné dans
l’accumulateur D, et comme arguments de sortie : le bit Z (Z=1 si le code est reconnu, Z=0
autrement) et le numéro de l’étage associé au code, qui est transmis par l’accumulateur B:
III.3 Que faudrait-il changer si on veut travailler par scrutation de PTP0 plutôt que par une
interruption ?
6/7
III.4 On choisit de travailler avec une interruption sur PTP0. Donnez l'algorithme du
programme principal (PP) et du programme d'interruption (PI).
PP PI
7/7