Instruction machine

En informatique, une instruction machine est une opération élémentaire qu'un programme demande à un processeur d'effectuer.



Catégories :

Langage machine - Microprocesseur - Langage impératif

Recherche sur Google Images :


Source image : mines.inpl-nancy.fr
Cette image est un résultat de recherche de Google Image. Elle est peut-être réduite par rapport à l'originale et/ou protégée par des droits d'auteur.

Page(s) en rapport avec ce sujet :

  • Le programme composé d'instructions machine et de données a été..... Exécution d'une instruction machine : les micro-commandes du processeur... (source : deptmedia.cnam)
  • Read safety instructions and operating instructions for your machine.... des limites de l'outil, de même que des dangers spécifiques qui lui sont propres.... (source : pdfqueen)
  • instruction machine. 1 ressource a été trouvée. | > >|. 5, 10, 15, 20, 25, 30, 35, 40, 45, 50. documents par page... (source : unit)

En informatique, une instruction machine est une opération élémentaire qu'un programme demande à un processeur d'effectuer. C'est l'ordre le plus basique que peut comprendre un ordinateur.

La collection d'instructions machine qui peuvent être données à un processeur est son jeu d'instructions. Les instructions machine sont codées en binaire. Un champ de l'instruction nommé «code opération» ou «opcode» sert à désigner l'opération à effectuer. Puisque sa valeur numérique n'a pas de sens pour les humains, le programmeur utilise une abréviation désignant le code opération apporté par le langage assembleur pour ce processeur.

Taille des instructions

La taille d'une instruction dépend de l'architecture de la plateforme, mais elle est habituellement comprise entre 4 et 64 bits. Voici un exemple d'une instruction x86 dans la notation symbolique d'un langage assembleur :

SHL AX, 01

On nomme SHL un opérateur, et AX, 01 des opérandes. AX est le nom du registre, 01 est une constante. Dans cet exemple, SHL est une abréviation mnémonique pour "shift left" (décalage vers la gauche). L'instruction provoque le décalage vers la gauche d'un bit du registre AX.

Instructions les plus fréquentes

On peut classer les instructions qu'un microcontrôleur est capable d'effectuer en quelques groupes.

Instructions de transfert

Un processeur passe une grande partie de son temps à transférer des octets d'un lieu à l'autre du dispositif : d'un périphérique vers un registre interne ou vice-versa, d'un registre interne vers la mémoire RAM ou vice-versa. Quelquefois, on ne peut pas effectuer de transfert direct d'une case mémoire vers une autre ou vers un périphérique, ou une écriture en mémoire ROM : il faut dans ce cas faire transiter les informations par l'un des registres internes. Remarquons que, sauf exception, il s'agit plutôt d'une copie que d'un transfert puisque la case mémoire d'origine garde son information (tant qu'on n'a pas écrit autre chose à la place).

Instructions arithmétiques

Les processeurs les plus simples ne permettent que d'effectuer des additions et des soustractions, ou alors des multiplications et des divisions sur des nombres entiers de la taille d'un mot. C'est surtout le cas des microcontrôleurs. Cependant, les processeurs modernes disposent le plus souvent d'une unité de calcul en virgule flottante capable d'effectuer des calculs sur les nombres à virgule. En l'absence d'une telle unité, les nombres à virgulent doivent être traitées en logiciel.

De même, certains anciens processeurs étaient capable d'effectuer des opérations mathématiques complexes telles que le traitement des grands nombres, des nombres fractionnaires, des puissances, des racines carrées, des fonctions trigonométriques, logarithmiques et exponentielles. Sur les processeurs modernes, ces opérations sont le plus souvent réalisées en logiciel avec opérations mathématiques de base.

Instructions logiques

Les processeurs sont capables d'effectuer des opérations logiques : ET, OU, XOU (XOR), NON (inverseur), rotations, décalages. Les opérations sont opérées simultanément sur les bits correspondant des deux registres.

La comparaison des octets A et B, qui est reconnue comme une opération logique, est réalisée comme une soustraction dont on néglige le résultat ; on s'intéresse simplement au fait de savoir s'il est nul (ce qui veut dire que A = B), positif (A > B) ou négatif (A < B). Ces indications sont inscrites dans des indicateurs d'états (petites mémoires d'un bit situées dans le processeur).

Instructions d'entrées/sorties

Ces instructions permettent de s'interfacer avec des systèmes extérieurs, via des ports d'entrée/sortie. Dans certaines architectures, les ports sont reconnus simplement comme des cases de mémoire et ils sont gérés par les instructions de transfert (entrées/sorties intégrées mémoire). D'autres architectures disposent d'instructions spécifiques pour les entrées/sorties (entrées/sorties indépendantes).

Instructions de branchement

Il s'agit d'instructions qui altèrent le déroulement normal du programme. On peut distinguer les sauts et les sous-routines :

Tant les sauts que les sous-routines peuvent être :

Instructions diverses

On trouve dans ce groupe :

Voir aussi

Recherche sur Amazone (livres) :




Ce texte est issu de l'encyclopédie Wikipedia. Vous pouvez consulter sa version originale dans cette encyclopédie à l'adresse http://fr.wikipedia.org/wiki/Instruction_machine.
Voir la liste des contributeurs.
La version présentée ici à été extraite depuis cette source le 07/04/2010.
Ce texte est disponible sous les termes de la licence de documentation libre GNU (GFDL).
La liste des définitions proposées en tête de page est une sélection parmi les résultats obtenus à l'aide de la commande "define:" de Google.
Cette page fait partie du projet Wikibis.
Accueil Recherche Aller au contenuDébut page
ContactContact ImprimerImprimer liens d'évitement et raccourcis clavierAccessibilité
Aller au menu