TRAVAUX PRATIQUES
ARCHITECTURE II
TP-1
Le registre compteur CX permet à une boucle d’effectuer jusqu’à 65535 itérations.
Cette limite s’avère souvent insuffisante. En programmation graphique, par exemple
la carte EGA (Enhanced Graphic Adaptor) lorsqu’elle fonctionne en mode 16
couleurs nécessite déjà 224 000 itérations pour afficher un écran de 640x350 pixels.
Nous souhaitons additionner deux nombres, le premier sur 32 bits et le second sur
16 bits seulement à la 90 005 ème itération. Nous abordons le problème selon chacune
des stratégies indépendantes suivantes :
a) Ecrire un programme entièrement en assembleur pour le 8086/8088
b) Même question pour le 68000 de Motorola
c) Sachant que les deux nombres sont des réels, rédiger un programme pour le
8086 qui fasse appel au coprocesseur 8087 pour réaliser l’addition flottante.
d) Ecrire d’abord le programme entièrement en C/C++, puis recoder environ 1%
du code (partie la plus critique) en assembleur 8086/8088.
Outils logiciels et documents utiles : architectures et jeux d’instructions pour les
microprocesseurs 8086/8088, 8087, 68000, TASM/MASM, TLINK/LINK, simulateur
68000, compilateur C/C++
NB : - Tous les TPs peuvent être traités en équipe de quatre étudiants au maximum
- Un étudiant doit appartenir à une même équipe pour l’ensemble des TPs
- Les programmes doivent être documentés (avec insertion de commentaires
pour faciliter leur compréhension)
- Un TP est un produit créatif de l’équipe et ne saurait être reproduit : Les
TPs identiques seront sévèrement sanctionnés.
- Les TPs peuvent être remis sur une disquette avant l’échéance et portant
soigneusement les numéros des TPs et la liste des étudiants de l’équipe.
- Date de remise des TPs 1, 2 & 3 : le 24/03/2004.