Université : Kasdi Merbah Ouargla Année Universitaire : 2017 / 2018 Faculté : F
Université : Kasdi Merbah Ouargla Année Universitaire : 2017 / 2018 Faculté : F.N.T.I.C Spécialité : 3eme Licence Automatique Département : Electronique et télécommunications Module : Microprocesseurs et microcontrôleurs Site : www.sites.google.com/site/universite2ouargla Groupe Facebook : Nasri Instrumentation Ouargla Elearn : TP Microprocesseur et Microcontrôleurs – N.NASRI Youtube : nadjib nasri matlablog Chargé du TP : N.Nasri … TP2 : Premiers pas en Assembleur 8086 … Nom / Prénom : 1) Groupe : 2) Objectifs : Se familiariser avec le logiciel Emu8086. Débuter avec le langage Assembleur. Matériel utilisé : Un PC. I – Préparation théorique : I-1 / Quelle est la valeur de chacune des données suivantes ? TP DW 8086 TP = TP DB 5 dup (“Assembleur 8086”) TP = Nombre DD ? Nombre = Matrice DW 12, 54, 30 Matrice = Chaine DB ‘Ceci est un message’ Chaine = Cinq EQU 5*6 Cinq = Six EQU Cinq*2 – Cinq Six = Douze EQU Cinq + Six Douze = Matrice DW 7 DUP ( ?) Matrice = Matrice DB 5 DUP (0, 1) Matrice = I-2 / Soit le programme suivant : a- Quelles sont les différentes parties de ce programme ? - ……………………………………. - ……………………………………. - ……………………………………. - ……………………………………. b- Quelle est le rôle de la première partie ? …………………………..………………………..……………………………………..…. …………………………………………………………………………………..……….… …………………………………………………………………………………………..…. Université : Kasdi Merbah Ouargla Année Universitaire : 2017 / 2018 Faculté : F.N.T.I.C Spécialité : 3eme Licence Automatique Département : Electronique et télécommunications Module : Microprocesseurs et microcontrôleurs Site : www.sites.google.com/site/universite2ouargla Groupe Facebook : Nasri Instrumentation Ouargla Elearn : TP Microprocesseur et Microcontrôleurs – N.NASRI Youtube : nadjib nasri matlablog Chargé du TP : N.Nasri … c- Désigner dans la liste suivante les directives et les instructions : - Assume - Mov - Debut - encore : - Ends - dup - dl - jne - inc - dw - ax - cmp Directives Mnémoniques Autre II/ Premiers pas en programmation : Parmi les opérations de base qu’on réalise en programmation Assembleur 8086, le transfert de données. Ceci se fait grâce aux instructions : MOV. II – 1 / L’instruction MOV : L’instruction MOV (En anglais : move est la traduction de mot français déplacer). En assembleur, Cette instruction réalise un transfert d’une source vers une destination : MOV destination, source Les transferts possibles : Destination Source Registre Registre Registre Mémoire Mémoire Registre Registre Valeur immédiate Mémoire Valeur immédiate Exemple 1 : mov ax,bx : charge le contenu du registre bx dans le registre ax. Dans ce cas, le transfert se fait du registre bx (source) vers un autre registre ax (destination). Exemple 2 : mov bl, [1200H] : cette instruction réalise le transfert du contenu de la case mémoire (source) d’adresse effective (offset) 1200H vers le registre bl (destination). L’instruction comporte l’adresse de la case mémoire ou se trouve la donnée. Exemple 3 : mov [1200H], al : cette instruction réalise le transfert du contenu du registre al (source) vers la case mémoire (destination) d’adresse effective (offset) 1200H. L’instruction comporte l’adresse de la case mémoire ou la donnée va être transférer. Exemple 4 : mov al, 12H : charge le registre al (destination) avec la valeur immédiate (source) 12H. La donnée est fournie immédiatement avec l’instruction. Exemple 5 : mov [1200H], 12H : cette instruction réalise le transfert de la valeur immédiate (source) 12H vers la case mémoire (destination) d’adresse effective (offset) 1200H. L’instruction comporte l’adresse de la case mémoire ou la donnée va être transférer. II – 2 / Débuter avec Emu8086 : 1 – Ouvrir l’émulateur emu8086. Université : Kasdi Merbah Ouargla Année Universitaire : 2017 / 2018 Faculté : F.N.T.I.C Spécialité : 3eme Licence Automatique Département : Electronique et télécommunications Module : Microprocesseurs et microcontrôleurs Site : www.sites.google.com/site/universite2ouargla Groupe Facebook : Nasri Instrumentation Ouargla Elearn : TP Microprocesseur et Microcontrôleurs – N.NASRI Youtube : nadjib nasri matlablog Chargé du TP : N.Nasri … 2 – Choisir un nouveau document en cliquant sur New dans le menu affiché. 3 – En suite, cliquer sur empty workspace dans la liste affichée afin d’avoir un document vide. 4 – Saisir, alors, le code assembleur suivant : 5 - Emuler le code en cliquant sur emulate se trouvant sur la barre de taches principale. 6 - Deux fenêtres s’afficheront. Une fenêtre (Original souce code) contient le code qu’on vient d’écrire. Une seconde fenêtre (emulator) qui nous permettra d’exécuter le code, de voir les contenus des différents registres et beaucoup d’autres choses qu’on verra en fur et à mesure. 7 - exécuter le code ainsi écrit en cliquant sur run. 8 – Que remarquez-vous sur le contenu des différents registres ? …………………………………………………………………………………………………. …………………………………………………………………………………………………. …………………………………………………………………………………………………. …………………………………………………………………………………………………. …………………………………………………………………………………………………. …………………………………………………………………………………………………. …………………………………………………………………………………………………. …………………………………………………………………………………………………. 9 - Maintenant, sur la fenêtre emulator, cliquer sur reload afin de recharger le code (c.à.d : Le mettre à nouveau en mémoire pour le ré-exécuter). Puis cliquer plusieurs fois sur single step et remarquer à chaque fois les changements dans les registres. MOV AL, 10H MOV AH, 09H Université : Kasdi Merbah Ouargla Année Universitaire : 2017 / 2018 Faculté : F.N.T.I.C Spécialité : 3eme Licence Automatique Département : Electronique et télécommunications Module : Microprocesseurs et microcontrôleurs Site : www.sites.google.com/site/universite2ouargla Groupe Facebook : Nasri Instrumentation Ouargla Elearn : TP Microprocesseur et Microcontrôleurs – N.NASRI Youtube : nadjib nasri matlablog Chargé du TP : N.Nasri … 10 - Donner les résultats dans le tableau suivant. - *- 10 – quel est le rôle de single step ? …………………………………………………………………………………………………. …………………………………………………………………………………………………. …………………………………………………………………………………………………. …………………………………………………………………………………………………. …………………………………………………………………………………………………. …………………………………………………………………………………………………. 11 – Enregistrer ce code sous le nom : monprog1.asm. II – 3 / Manipulation des registres et de la mémoire : 1 – Saisir, alors, le code assembleur suivant : 2 - Emuler le code en cliquant sur emulate se trouvant sur la barre de taches principale. 3 - exécuter le code ainsi écrit en cliquant sur run. 4– Que remarquez-vous sur le contenu des différents registres ? ………………………………………………………………………………………………….……… ………………………………………………………………………………………….……………… ………………………………………………………………………………….……………………… ………………………………………………………………………….……………………………… ………………………………………………………………….……………………………………… ………………………………………………………….……………………………………………… ………………………………………………….……………………………………………………… ………………………………………………………………………………………....………………. ………………………………………………………………………………………....………………. ………………………………………………………………………………………....………………. 5– Que remarquez-vous sur la mémoire ? ………………………………………………………………………………………………….……… ………………………………………………………………………………………….……………… ………………………………………………………………………………….……………………… ………………………………………………………………………….……………………………… ………………………………………………………………….……………………………………… ………………………………………………………….……………………………………………… ………………………………………………….……………………………………………………… ………………………………………………………………………………………....………………. ………………………………………………………………………………………....………………. ………………………………………………………………………………………....………………. ………………………………………………………………………………………....………………. mov ax, 05h mov [100], ax Université : Kasdi Merbah Ouargla Année Universitaire : 2017 / 2018 Faculté : F.N.T.I.C Spécialité : 3eme Licence Automatique Département : Electronique et télécommunications Module : Microprocesseurs et microcontrôleurs Site : www.sites.google.com/site/universite2ouargla Groupe Facebook : Nasri Instrumentation Ouargla Elearn : TP Microprocesseur et Microcontrôleurs – N.NASRI Youtube : nadjib nasri matlablog Chargé du TP : N.Nasri … Indication: Après exécution, on aura la fenêtre suivante (fenêtre de l’émulateur), plusieurs informations sont présentes : sur les registres, la mémoire, sur le programme … Registres mémoire Programme Adresse physique Hexadécimal Décimal Code ASCII - Remarquer qu’il existe plusieurs lignes de codes qui se termine par HLT, et l’adresse correspondante est 0101A. Ceci est simplement dû au fait que le programme lui-même est stocké en mémoire. 6– Taper maintenant 100 dans la zone indiquant l’adresse mémoire et appuyer sur entrée du clavier. 7– Observer maintenant la case correspondant à 01001 et compléter le tableau . Valeur Signification 01100 05 005 (pour la dernière .. consulter l’annexe 1 : Code ASCII) Université : Kasdi Merbah Ouargla Année Universitaire : 2017 / 2018 Faculté : F.N.T.I.C Spécialité : 3eme Licence Automatique Département : Electronique et télécommunications Module : Microprocesseurs et microcontrôleurs Site : www.sites.google.com/site/universite2ouargla Groupe Facebook : Nasri Instrumentation Ouargla Elearn : TP Microprocesseur et Microcontrôleurs – N.NASRI Youtube : nadjib nasri matlablog Chargé du TP : N.Nasri … 8 – Saisir, alors, le code assembleur suivant : 9 - Emuler le code en cliquant sur emulate se trouvant sur la barre de taches principale. 10 - exécuter le code ainsi écrit en cliquant sur run. 11- quelle est la différence entre l’utilisation de ax et ah ? ………………………………………………………………………………………………….……… ………………………………………………………………………………………….……………… ………………………………………………………………………………….……………………… ………………………………………………………………………….……………………………… ………………………………………………………………….……………………………………… ………………………………………………………….……………………………………………… ………………………………………………….……………………………………………………… ………………………………………………………………………………………....………………. 12- Saisir, alors, le code assembleur suivant : 13 - Emuler le code en cliquant sur emulate se trouvant sur la barre de taches principale. 14 - exécuter le code ainsi écrit en cliquant sur run. 15 – Compléter le tableau ci-après. 16- Saisir, alors, le code assembleur suivant : 17 - Emuler le code en cliquant sur emulate se trouvant sur la barre de taches principale. 18 - exécuter le code ainsi écrit en cliquant sur run. 19 – Compléter le tableau ci-après. Valeur 1er cas 2eme cas Adresse physique Valeur en Hexadécimal Valeur en Décimal Valeur en Code ASCII 20 – Commentaire : ………………………………………………………………………………………………….……… ………………………………………………………………………………………….……………… ………………………………………………………………………………….……………………… ………………………………………………………………………….……………………………… ………………………………………………………………….……………………………………… ………………………………………………………….……………………………………………… ………………………………………………….……………………………………………………… ………………………………………………………………………………………....………………. ………………………………………………………………………………………………….……… ………………………………………………………………………………………….……………… ………………………………………………………………………………….……………………… ………………………………………………………………………….……………………………… ………………………………………………………………….……………………………………… 21- Saisir, alors, le code assembleur suivant et refaite le même travail. mov ah, 05h mov [100], ah mov ax, 55h mov [100], ax mov ax, 55 mov [100], ax mov al, 55h mov ah, 36 mov [100h], al mov [104h], ah Université : Kasdi Merbah Ouargla Année Universitaire : 2017 / 2018 Faculté : F.N.T.I.C Spécialité : 3eme Licence Automatique Département : Electronique et télécommunications Module : Microprocesseurs et microcontrôleurs Site : www.sites.google.com/site/universite2ouargla Groupe Facebook : Nasri Instrumentation Ouargla Elearn : TP Microprocesseur et Microcontrôleurs – N.NASRI Youtube uploads/Litterature/ 2018tp2-8086.pdf
Documents similaires
-
20
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Aoû 05, 2021
- Catégorie Literature / Litté...
- Langue French
- Taille du fichier 0.6417MB