Allgemeines über Programmiersprachen Flashcards
1
Q
Was ist ein Interpreter?
A
Ein Interpreter ist ein Programm, dass das Programm des Entwicklers einliest, interpretiert und schrittweise ausführt.
Es findet keine Übersetzung in Maschinensprache statt.
2
Q
Was ist ein Compiler?
A
Ein Compiler übersetzt ein Programm in Maschinensprache. Das übersetzte Programm kann direkt ausgeführt werden.
3
Q
Was macht ein Linker?
A
Ein Linker baut alle Module zu einem ausführbaren Programm zusammen. Dieser bindet dabei externe Bibliotheken und Funktionen ein.
4
Q
Welche Arbeitsschritte führt ein Compiler aus?
A
- Lexikalische Analyse: Zerlegung in Folge von Symbolen, Lexikalische Korrektheit
- Symboltabelle: Speichert die verwendeten Bezeichner
- Syntaktische Analyse: Prüfung auf syntaktische Korrektheit
- Semantische Analyse: Kontextabhängige Prüfung (z. B. sind aufgerufene Funktionen definiert, benutzte Variablen deklariert)
- Zwischencodeerzeugung: Erzeugung der ersten Version des Ausagbeprogramms
- Codeoptimierung (optional): Der Maschinencode kann nach verschiedenen Kriterien optimiert werden.