Index du Forum


 
 Index du ForumFAQRechercherS’enregistrerConnexion

:: Ecriture des instructions en langage symbolique ::

 
Poster un nouveau sujet   Répondre au sujet     Index du Forum -> ~~ semestre 1~~ -> l'architecture des ordinateurs
Sujet précédent :: Sujet suivant  
Auteur Message
lotfi
Administrateur

Hors ligne

Inscrit le: 31 Oct 2011
Messages: 12
Masculin
Point(s): 49
Moyenne de points: 4,08

MessagePosté le: Jeu 17 Nov - 21:27 (2011)    Sujet du message: Ecriture des instructions en langage symbolique Répondre en citant

Ecriture des instructions en langage symbolique 
 
Voici un programme en langage machine 80486, implanté à l’adresse 0100H : 
A1 01 10 03 06 01 12 A3 01 14 
Jeu d’instruction  
Ce programme additionne le contenu de deux cases mémoire et range le résultat dans
une troisième. Nous avons simplement transcrit en hexadécimal le code du programme. Il 
est clair que ce type d’écriture n’est pas très utilisable par un être humain. 
A chaque instruction que peut exécuter le processeur correspond une représentation 
binaire sur un ou plusieurs octets, comme on l’a vu plus haut. C’est le travail du processeur 
de décoder cette représentation pour effectuer les opérations correspondantes. 
Afin de pouvoir écrire (et relire) des programmes en langage machine, on utilise une 
notation symbolique, appelée langage assembleur. Ainsi, la première instruction du programme
ci-dessus (code A1 01 10) sera notée : 
 
 
MOV AX, [0110] 
elle indique que le mot mémoire d’adresse 0110H est chargé dans le registre du processeur. 
On utilise des programmes spéciaux, appelés assembleurs, pour traduire automatiquement
le langage symbolique en code machine. 
Voici une transcription langage symbolique du programme complet. L’adresse de début 
de chaque instruction est indiquée à gauche (en hexadécimal). 
 
Adresse Contenu MP Langage Symbolique Explication en francais 
0100 A1 01 10 MOV AX, [0110] Charger AX avec le contenu 
de 0110. 
0103 03 06 01 12 ADD AX, [0112] Ajouter le contenu de 0112 
a AX (resultat dans AX). 
0107 A3 01 14 MOV [0114], AX Ranger AX en 0114. 
Sens des mouvements de données 
La plupart des instructions spécifient des mouvements de données entre la mémoire 
principale et le microprocesseur. En langage symbolique, on indique toujours la destination, 
puis la source. Ainsi l’instruction 
MOV AX, [0110] 
transfère le contenu de l’emplacement mémoire 0110H dans l’accumulateur, tandis 
que MOV [0112], AX transfère le contenu de l’accumulateur dans l’emplacement mémoire
0112. 
L’instruction MOV (de l’anglais move, déplacer) s’écrit donc toujours : 
 
MOV destination, source 
Modes d’adressage 
– En adressage immédiat, on indique simplement la valeur de l’opérande en hexadécimal. 
Exemple : 
MOV AX, 12 
– En adressage direct, on indique l’adresse d’un emplacement en mémoire principale 
en hexadécimal entre crochets : 
MOV AX, [A340] 

_________________
L"""O"""T"""F"""I


Revenir en haut
Publicité






MessagePosté le: Jeu 17 Nov - 21:27 (2011)    Sujet du message: Publicité

PublicitéSupprimer les publicités ?
Revenir en haut
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet     Index du Forum -> ~~ semestre 1~~ -> l'architecture des ordinateurs Toutes les heures sont au format GMT
Page 1 sur 1

 
Sauter vers:  

Index | Panneau d’administration | créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Texno x0.3 © theme by Larme D'Ange 2006
Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com