Flux rss
Collection CommentÇaMarche.net
Bookmark Ajouter aux favoris / Partager

A quoi ressemble une instruction ?

L'instruction est l'élément clé de l'ordinateur car c'est elle qui permet de spécifier au processeur l'action à effectuer. Toutes les instructions sont stockées en mémoire et un compteur dans le processeur permet de passer de l'une à l'autre.
Une instruction est composée de deux éléments :

  • le code opération : action à effectuer par le processeur
  • le champ opérande : donnée ou bien adresse de la case mémoire contenant une donnée

La taille d'une instruction dépend de l'instruction et de l'opérande, elle est généralement de quelques octets (1 à 8). La taille des instructions dépend également de l'architecture du processeur. Elle peut ainsi atteindre 4 octets dans le cas de processeurs 32 bits, voire 8 octets pour les processeurs x86 64 bits. L'octet est l'unité qui est utilisée généralement car elle est pratique pour le stockage de certaines données (notamment les caractères).

code opération champ opérande

Les types d'instructions

L'ensemble des instructions est appelé jeu d'instruction. On peut les répartir selon plusieurs catégories selon le type d'action que son exécution déclenche.

Instructions d'affectation

Les instructions d'affectation permettent de faire des transferts de données entre les registres et la mémoire, c'est-à-dire :

  • soit une écriture (du registre vers la mémoire)
  • soit une lecture (de la mémoire vers un registre)

Instructions arithmétiques et logiques

Ces instructions portent sur le registre AX (l'accumulateur). Elles permettent d'effectuer une opération entre le registre AX et une donnée puis stocker le résultat dans AX. Ces instructions sont :

  • l'addition : AX = AX + donnée
  • la soustraction : AX = AX - donnée
  • l'incrémentation : AX = AX + 1
  • la décrémentation : AX = AX - 1
  • le décalage à gauche
  • le décalage à droite

Instructions de comparaison

Permet de comparer le registre AX à une donnée. Le résultat de la comparaison est indiqué grâce à... des indicateurs...
Ces instructions (ainsi que les instructions de branchement) sont nécessaires pour permettre une « interactivité », c'est-à-dire qu'en fonction de certains paramètres le programme va pouvoir avoir divers comportements. Sans ces indicateurs les programmes auraient un comportement déterminé et le programme ferait constamment les mêmes actions (comme un film...).

Instructions de branchement

Ce type d'instruction permet de sauter à une instruction non consécutive à l'instruction en cours. En l'absence de ce type d'instruction le processeur passe automatiquement à l'instruction suivante (c'est-à-dire l'instruction contiguë (en mémoire) à l'instruction en cours). C'est le registre IP qui repère l'instruction suivante à exécuter. Les instructions de branchement permettent donc de modifier la valeur de ce registre et ainsi de choisir la prochaine instruction à exécuter.

On distingue deux sortes de branchements :

  • Les branchements conditionnels : en fonction d'une condition à satisfaire le processeur traitera le branchement indiqué ou l'instruction suivante.
    • condition satisfaite : exécution de l'instruction située à l'adresse indiquée
    • condition non satisfaite : exécution de l'instruction suivante
    Les branchements conditionnels sont très utiles, notamment pour créer des boucles ou des structures conditionnelles.
  • Les branchements inconditionnels : on affecte une valeur définie au registre IP, c'est-à-dire que l'on ira exécuter l'instruction vers laquelle il pointe après celle en cours quoi qu'il arrive !


Dernière modification le mardi 14 octobre 2008 à 17:40:29.Ce document intitulé « Instruction en assembleur » issu de Comment Ça Marche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Liste des instructions en assembleur Tableau des principales instructions en assembleur Voici une liste (non exhaustive) des principales instructions en assembleur des processeurs 80x86, ainsi que du code machine qui leur est associé et de leur taille en mémoire. Les valeurs val et... www.commentcamarche.net/contents/asm/liste.php3
[assembleur] carry Bonjour, j'ai un algo j'aimerais des explications sur quelque lignes. Programme Générateur Pseudo Aléatoire Début : BH www.commentcamarche.net/forum/affich-876850-assembleur-carry
Branchements en assembleur On appelle saut (ou branchement) en assembleur le fait de passer à une instruction autre que celle qui suit celle en cours en mémoire. En effet, en temps normal (c'est-à-dire sans instruction contraire) le processeur exécute les instructions... www.commentcamarche.net/contents/asm/saut.php3
Assembleur - Multiplication par une constanteEn assembleur vous pouvez effectuer une multiplication en utilisant les instructions mul (nombres non signés) et imul. On l'utilise ainsi: mul nom_registre Ensuite en interne, le processeur multiplie le contenu de eax ou ax ou al (selon la taille... www.commentcamarche.net/faq/sujet-12520-assembleur-multiplication-par-une-constante
[Photofiltre]Réaliser un assemblage de 2 imagesPhotofiltre est un logiciel de retouche d'image. Cette astuce fonctionne aussi bien avec Photofiltre qu'avec Photofiltre Studio Dans ce cas précis, Photofiltre va permettre d'assembler un collage c'est-à-dire de coller une deuxième image (en... www.commentcamarche.net/faq/sujet-7719-photofiltre-realiser-un-assemblage-de-2-images
Compiler un programme assembleur avec NasmAvec Linux Etape 1. Créer un fichier source Etape 2. Assembler le fichier source Etape 3. Création de l'executable Etape 4. Execution du programme Avec windows Etape 1. Installer les logiciels nécessaires Etape 2. Créer un fichier... www.commentcamarche.net/faq/sujet-9836-compiler-un-programme-assembleur-avec-nasm
VirtualDub Assembler videoBonjour, Aprés avoir suivi les instructions du Forum sur Assembler une video avec VirtualDub, j'en suis au stade "Ajouter un segment AVI" mais il n'est pas en surbrillance et donc ne s'ouvre pas. Pouvez-vous m'aider? www.commentcamarche.net/forum/affich-3604673-virtualdub-assembler-video
Nouveau PC via un assembleur : bug écran bleu (Résolu)Bonjour à tous; je viens de faire monter par un assembleur un super PC sur mesure( 1400€)...mais ...qui ne fonctionne pas ! En effet , il a fonctionné quelques minutes , j'y ai installé Norton et un CPL et il s'est arrêté tout seul lors de l'ouverture... www.commentcamarche.net/forum/affich-2450909-nouveau-pc-via-un-assembleur-bug-ecran-bleu
Cours assembleur 8086 (Résolu)Bonjour, je voudrais avoir un lien où je pouurais trouver un cours d'assembleur 8086 pour debutants on a comencer le cours en classe et je n'y comprend rien du tout! www.commentcamarche.net/forum/affich-4180565-cours-assembleur-8086
50 ans d'archives de l'Assemblée nationale sur Internet(Paris - Relax news) - A l'occasion du 50ème anniversaire de la première séance de la première législature de la Ve République, qui s'est tenue le 9 décembre 1958, l'Assemblée nationale met en ligne tous les comptes rendus de séance de ces cinquante... www.commentcamarche.net/actualites/50-ans-d-archives-de-l-assemblee-nationale-sur-internet-5847949-actualite.php3
Les procédures en assembleurLa notion de procédure En langage assembleur, on appelle procédure un sous-programme qui permet d'effectuer un ensemble d'instructions par simple appel de la procédure. Cette notion de sous-programme est généralement appelée fonction dans d'autres... www.commentcamarche.net/contents/asm/procedure.php3
Introduction à l'assembleurLes prérequis nécessaires Le langage assembleur est très proche du langage machine (c'est-à-dire le langage qu'utilise l'ordinateur : des informations en binaire, soit des 0 et des 1). Il dépend donc fortement du type de processeur. Ainsi il... www.commentcamarche.net/contents/asm/assembleur.php3
Assembler un PCDe l'assemblage d'un ordinateur Un ordinateur de type PC est modulaire, c'est-à-dire qu'il peut être monté en assemblant des éléments matériels de différents constructeurs, afin d'obtenir un ordinateur conforme à ses besoins. Les éléments... www.commentcamarche.net/contents/assemblage/monter.php3