Programmiersprachen - Abstraktionsniveau
Assembler
Hier wird die Maschine 1:1 in Code abgebildet. Damit kann man den ganzen Befehlssatz des Prozessors nutzen und muß diese auch genau kennen
Man verzichtet auf jegliche Abstraktion (und damit auf automatische Optimierung und Portabilität).
Einsatzgebiete
- Start- und Stopcode von Programmen
- Kernprogrammierung, Wechsel der Schutzumgebung
- Compilerbau: Erzeugung des Codes
Üblicherweise begrenzt man Assemblercode auf kleine Unterprogramme, die
die Maschinenabhängigkeiten abstrahieren.
Kleine Befehssequenzen kann man in C/C++-Code einbunden, wird z.B hier beschrieben,
oder in A Brief Tutorial on GCC inline asm (x86 biased)
Links
- Assembly-HOWTO
- Linix assembly ORG
- Sehr viel Material
- The Art of Assembly Programming
- Ein umfassendes Lehrbuch
Assemblerprogramme
- GNU Assembler "as" aus binutils
- verwendet die AT&T Syntax
- NASM the netwide assembler
- verwendet die INTEL-Syntax (nach Linux Assembler-Programmierung)
- Yasm
- Assembler für Linux und Windows-Formate (ELF32, ELF64, 32 and 64-bit Mach-O, RDOFF2, COFF, Win32, and Win64)
Informatik- und Netzwerkverein Ravensburg e.V
Rudolf Weber