Désassemblage

canon_powershot_a520_disassembled

 

Un langage spécifique à chaque processeur

Le langage machine est le seul langage qu’un processeur puisse exécuter. Or chaque famille de processeurs utilise un jeu d’instructions différent.

Par exemple, un processeur de la famille x86 reconnaît une instruction du type

10110000 01100001

En langage assembleur, cette instruction est représentée par un équivalent plus facile à comprendre pour le programmeur :

movb $0x61,%al

(10110000 = movb %al
01100001 = $0x61)

Ce qui signifie : « écrire le nombre 97 (la valeur est donnée en hexadécimal : 6116 = 9710) dans le registre AL ».

Ainsi, le langage assembleur, représentation exacte du langage machine, est spécifique à chaque architecture de processeur. De plus, plusieurs groupes de mnémoniques ou de syntaxes de langage assembleur peuvent exister pour un seul ensemble d’instructions, créant ainsi des macro-instructions.
Désassemblage
La transformation du code assembleur en langage machine est accomplie par un programme nommé assembleur. L’opération inverse, à savoir retrouver l’assembleur équivalent à un morceau de code machine, porte un nom : il s’agit de désassemblage.

via Assembleur — Wikipédia

Publicités

Laisser un commentaire

Choisissez une méthode de connexion pour poster votre commentaire:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s