AT&T (assembleur)
- AT&T (assembleur)
-
AT&T (assembleur)
AT&T est le nom donné à une forme de codage en assembleur pour l'architecture x86. Cette forme de codage est apparue avec les premiers UNIX[réf. nécessaire] (AT&T est la société à l'origine d'UNIX). Cette forme est surtout utilisée sous UNIX. Cette syntaxe est utilisée par GAS, l'assembleur du projet GNU.
Concepts
Par opposition à la norme Intel, la norme AT&T place les opérandes dans l'ordre Source avant Destination.
Les principales caractéristiques de cette syntaxe sont :
- L'assembleur fait toujours la différence entre majuscules et minuscules
- Les constantes sont écrites avec la notation habituelle en C
- Les opérandes immédiats (constantes) sont préfixés d'un dollar
'$'
- Les registres sont préfixés d'un
'%'
- Les sauts (jmp/call) absolus sont préfixés d'un astérisque
'*'
- L'indirection (déférenciation) est marquée par des parenthèses : un opérande basé sur EBX+table donne
table(%ebx)
- Ordre des opérandes : Source avant Destination (ordre choisi pour des raisons de compatibilité avec d'autres assembleurs UNIX)
- La taille des opérandes peut être précisée grâce au dernier caractère de l'opération (en syntaxe Intel, jusqu'au Pentium inclus, des opérateurs spécifiques sur les opérandes sont utilisés, par exemple l'opérateur
PTR
avec MASM) :
b
→ byte (8 bits - 1 octet)
w
→ word (16 bits - 2 octets)
s
→ short (32 bits - 4 octets, pour les opération en virgule flottante)
l
→ long (32 bits - 4 octets pour les entiers, 64 bits - 8 octets pour les flottants)
q
→ quad (64 bits - 8 octets)
t
→ ten bytes (80 bits - 10 octets)
o
→ octo (128 bits - 16 octets), pour l'architecture x86-64
- Les sauts « longs » (ljump/lcall) absolus ont la syntaxe suivante :
$sélecteur, $offset
, et non pas section:offset
comme dans la syntaxe des manuels Intel
- Pas de support pour de multiples segments, les programmes utilisent un unique adressage virtuel linéaire
Exemples
Par exemple, une instruction en norme Intel :
mov eax, 0FFh
Donnera en norme AT&T
movl $0xFF, %eax
L'équivalent en AT&T de
mov byte ptr [ebx], 0FFh
Est
movb $0xFF, (%ebx)
Source
Voir aussi
Articles connexes
Catégories : Programmation informatique | Langage de programmation | Langage impératif
Wikimedia Foundation.
2010.
Contenu soumis à la licence CC-BY-SA. Source : Article AT&T (assembleur) de Wikipédia en français (auteurs)
Regardez d'autres dictionnaires:
Assembleur (langage) — Assembleur Cet article concerne le langage d assemblage. Pour le programme produisant un exécutable à partir d un source écrit dans ce langage, voir Programme assembleur. Un langage d assemblage ou langage assembleur ou simplement… … Wikipédia en Français
assembleur — assembleur, euse [ asɑ̃blɶr, øz ] n. • apr. 1650; assembleor 1281; de assembler 1 ♦ Ouvrier, ouvrière qui assemble des pièces. ⇒ monteur. Assembleur de charpente en fer. N. f. Machine pour assembler les feuilles imprimées. 2 ♦ N. m. (v. 1965, de… … Encyclopédie Universelle
Assembleur D'ordinateur — Un assembleur d ordinateur est la personne qui assemble les ordinateurs personnels, dits « PC » (« Peronnal Computer). Le métier consiste à assembler les pièces qui compose l ordinateur et à les installer dans un boîtier de… … Wikipédia en Français
assembleur — assembleur, euse (a san bleur, bleû z ) s. m. et f. 1° Ouvrier, ouvrière qui fait les assemblages après le tirage des volumes. 2° Poétiquement. • ... Notre engeance Prit pied sur cette indulgence.... Et l assembleur de nuages Jura le Styx,… … Dictionnaire de la Langue Française d'Émile Littré
Assembleur — Cet article concerne le langage d assemblage. Pour le programme produisant un exécutable à partir d un source écrit dans ce langage, voir Programme assembleur. Un langage d assemblage ou langage assembleur ou simplement assembleur par abus de… … Wikipédia en Français
Assembleur moléculaire — Un assembleur moléculaire est un concept purement théorique. Tel que le définit Eric Drexler, il s agit d « une machine capable d encadrer les réactions chimiques en positionnant les molécules réactives avec une précision nanométrique… … Wikipédia en Français
assembleur — ● n. m. ● 1. ►CIEL Logiciel qui permet de compiler du code source en langage d assemblage. ● 2. ►LANG Nom d usage d une version un peu humanisée du langage machine (celui du processeur). Les instructions sont celles de la machine, mais un… … Dictionnaire d'informatique francophone
ASSEMBLEUR, EUSE — n. Celui, celle qui assemble. Poétiquement, L’assembleur de nuages, Jupiter. Il se dit spécialement de Celui, celle qui fait les assemblages dans une imprimerie … Dictionnaire de l'Academie Francaise, 8eme edition (1935)
Assembleur d'ordinateur — Un assembleur d ordinateur est la personne qui assemble les ordinateurs personnels, dits « PC » (Personal Computer). Le métier consiste à assembler les pièces qui compose l ordinateur et à les installer dans un boîtier de protection… … Wikipédia en Français
Assembleur — As|sem|bleur [asã blø:ɐ̯] der; s, s <aus gleichbed. fr. assembleur> (veraltet) Beschäftigter in der Buchbinderei, der die einzelnen Druckbogen eines Buches zusammenträgt … Das große Fremdwörterbuch
Langage Assembleur — Assembleur Cet article concerne le langage d assemblage. Pour le programme produisant un exécutable à partir d un source écrit dans ce langage, voir Programme assembleur. Un langage d assemblage ou langage assembleur ou simplement… … Wikipédia en Français