Assembler
Aus Lowlevel
Als Assembler wird einerseits eine einfache Programmiersprache andererseits auch der Übersetzer dieser Programmiersprache in Maschinencode bezeichnet. Die Programmiersprache ist auf einen bestimmten Prozessortyp zugeschnitten und stellt die einzelnen Prozessorbefehle als Wörter (Mnemoniks bzw. engl. Mnemonics) mit eventuellen Parametern da. Damit ist die Sprache kaum portabel. Zusätzlich vereinfacht der Übersetzer der Programmiersprache die Adressberrechnung (unter anderem durch Labels) und ermöglicht das Berechnen von Konstanten, die sich aus Formeln zusammensetzen.
Inhaltsverzeichnis |
Syntax
Es gibt für die x86 Prozessorfamilie verschiedene Syntaxen.
Intel
Die Intel Syntax wird meistens verwendet wenn man Assembler von Hand schreibt.
Beispielcode:
mov al, 0x10
AT&T
Diese Syntax wurde speziell für das schnelle Assemblieren entwickelt, um ihn beim Kompilieren von Hochsprachenquellcode als Zwischenschritt zu verwenden.
Beispielcode:
movb $0x10, %al
Diese Syntax wird vor allem im Zusammenhang mit gcc verwendet. Unter Inline-Assembler mit GCC befindet sich ein kleines Tutorial hierzu.
Liste bekannter Assembler
Assembler für x86
FASM (flat assembler) [1]
MASM (Microsoft Macro Assembler) [2]
NASM (The Netwide Assembler) [3]
TASM (Turbo Assembler) [4]
YASM (Diese Buchstabenkombination besitzt keine offizielle Langform) [5]
