Bonjour,
S'il vous plaît je vous prie de m'apporter des solutions aux exercices suivants. Cordialement
EXERCICE I :
Il s’agit d’effectuer un tri dans un tableau pour ordonner celui-ci dans l’ordre décroissant des valeurs numériques. Les donnée sont des nombres non alignés, codés en hexadécimal et compris entre 0 et 255.
Le tableau est en mémoire centrale à partir de l’adresse TAB. L’exploration du tableau se fait par l’examen de deux données successives comme suit :
- si les deux données sont rangées dans le bon ordre on continue l’exploration.
- Si les deux données ne sont pas rangées dans le bon ordre, on les permute et on continue l’exploration.
Lorsqu’on a terminé l’exploration du tableau on recommence jusqu’à ce que lors d’une exploration complète l’on ait effectué aucune permutation.
Organigramme proposé :
Soit T(I) la ième donnée du tableau, on fera l’exploration en faisant varier I.
Pour savoir quand arrêter le tri, on testera l’indicateur binaire P contenu dans la position mémoire MEM.
P sera mis à zéro au début de chaque exploration et à « 1 » lorsqu’il y aura eu permutation de données.
Après avoir examiné l’organigramme de la page 2/2, écrire le programme correspondant.
EXERCICE II :
Huit diodes électroluminescentes (L.E.D) sont reliées au port B du PIA d’un système bâti autour du microprocesseur 6809. Une L.E.D est allumée lorsqu’elle reçoit un niveau logique haut, autrement elle est éteinte.
Ecrire un programme qui permet l’éclairement des huit L.E.D de la façon suivante :
D7 D6 D5 D4 D3 D2 D1 D0
E E E E E E E E
E E E E E E E A
E E E E E E A A
E E E E E A A A
E E E E A A A A
E E E A A A A A
E E A A A A A A
E A A A A A A A
A A A A A A A A
E E E E E E E E
D = diode E = éteinte A = allumée
Chaque combinaison devra être maintenue un temps Δt qui correspond à la boucle d’attente ci-dessous.
ENCORE LDX #$7000
LEAX – 1, X
BNE ENCORE
-----