ASM86

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

ASM86 wurde von der Firma Intel als Assembler für deren x86-Prozessor-Familie vertrieben. Heute wird er nicht mehr vertrieben oder weiterentwickelt. Seine Syntax ist jedoch weit verbreitet unter x86-Assemblern wie dem Netwide Assembler, dem Microsoft Macro Assembler oder Borlands Turbo Assembler. Die Syntaxen heutiger x86-Assembler basieren meistens auf der des ASM86 oder sind identisch mit dieser, daher ist sie auch allgemein als „Intel Syntax" oder „Intel Assembler Syntax" bekannt.

Syntaxunterschiede

[Bearbeiten | Quelltext bearbeiten ]

Für x86-Assembly gibt es zwei vorherrschende Syntaxen: Intel-Syntax und AT&T-Syntax.[1] Unter Windows dominiert die Intel-Syntax, im GNU/Linux-Ökosystem dagegen die AT&T-Syntax.[2]

AT&T Intel
Parameterreihenfolge Erst Quelle, dann Ziel
mov5ドル,%eax
Erst Ziel, dann Quelle
moveax,5
Parametergröße Mnemonics erhalten ein Suffix, das für die Operandenlänge steht: q = QWord, l = DWord, w = Word b = Byte.[1]
addl4ドル,%esp
 
addesp,4
Sigils Unmittelbare Werte haben Präfix "$", Register "%".[1]
Effektive Adressen DISP(BASE,INDEX,SCALE). Beispiel:
movlmem_location(%ebx,%ecx,4),%eax
Beispiel:
moveax,[ebx+ecx*4+mem_location]
Siehe auch: Assemblersprache

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten ]
  1. a b c Ram Narayam: Linux assemblers: A comparison of GAS and NASM. 17. Oktober 2007, abgerufen am 13. Januar 2015 (englisch). 
  2. The Creation of Unix. Bell Labs, archiviert vom Original am 20. Mai 2011; abgerufen am 13. Januar 2015 (englisch). 
Abgerufen von „https://de.wikipedia.org/w/index.php?title=ASM86&oldid=254138362"