Assembler/Einleitung
Einleitung
Assembler ist die Programmiersprache des Prozessors. Das heißt, dass man direkt Befehle und Daten an den Prozessor schickt und ausführt.
Assembler-Dateien haben normalerweise die Dateiendung ".asm". Für dieses Tutorial verwende ich den fasm (Wikipedia) (flat-assembler), weil er Open-Source und für alle gängigen Betriebssystem verfügbar ist. Die Syntax von anderen Assemblern wie nasm (Wikipedia) oder masm (Wikipedia) ist etwas anders als bei fasm.
Um zu verdeutlichen wie direkt ein Assembler arbeitet, eine ganz simple asm-Datei, die kompiliert 3 Zeichen in die Ausgabedatei speichert:
db 97,0x62,'c'
Wenn man diesen Code in die Datei "test.asm" speichert und danach mit dem Befehl "fasm test.asm test.txt" kompiliert, so erzeugt dieser Befehl die Datei test.txt mit dem folgenden Inhalt:
abc
Um zu verstehen, was der Assembler-Compiler da macht, hier eine Erläuterung:
Das "db" sagt dem Compiler, dass er die folgenden Daten als Bytes in die Ausgabedatei speichern soll!
Dabei kann man ihm die Daten in unterschiedlichen Formaten, mit Kommas getrennt übergeben, z.B. als Dezimalzahl mit Werten zwischen 0 und 255, als Hexadezimalzahl zwischen 0x00 und 0xff bzw. 00h und ffh oder als String in einfachen oder doppelten Anführungszeichen.