Was ist ein Compiler oder wie bringt man einen Computer dazu, zu verstehen, was man von ihm will?

Inhaltsverzeichnis:

Was ist ein Compiler oder wie bringt man einen Computer dazu, zu verstehen, was man von ihm will?
Was ist ein Compiler oder wie bringt man einen Computer dazu, zu verstehen, was man von ihm will?

Video: Was ist ein Compiler oder wie bringt man einen Computer dazu, zu verstehen, was man von ihm will?

Video: Was ist ein Compiler oder wie bringt man einen Computer dazu, zu verstehen, was man von ihm will?
Video: Computer Grundlagen 1: Was ist ein Compiler? 2024, November
Anonim

Die letzte Stufe der Erstellung eines Programms besteht darin, einen Algorithmus, der in einer der Programmiersprachen (C/C++, Pascal usw.) geschrieben ist, in eine einfache Maschinensprache zu übersetzen. Dies liegt daran, dass Computern, um irgendeine Aufgabe auszuführen, Befehle in einer Sprache gegeben werden müssen, die sie verstehen, die nahezu binär ist und mit primitiven Datenstrukturen (Bit, Byte oder Wort) arbeitet. Als Übersetzung wird der Vorgang bezeichnet, domänenspezifische Aussagen von Hochsprachen in Binärcode zu übersetzen. Es gibt zwei Übersetzungsmethoden - Zusammenstellung und Interpretation.

Compiler ist
Compiler ist

Compiler - was ist das?

Die Analyse vieler Interpretationen der Begriffe "Compiler" und "Kompilierung" ermöglicht es uns, die folgende Definition hervorzuheben. Ein Compiler ist ein Programm, das entwickelt wurde, um den Text eines Quellalgorithmus aus einer Hochsprache in einen äquivalenten Satz von Anweisungen in einer maschinenorientierten Sprache zu übersetzen. Dies ist der sogenannte Objektcode, zum späteren Zusammenbau des resultierenden Objektcodes zu einem gebrauchsfertigen Programmmodul.

Compiler und Interpreter - Gemeinsamkeiten und Unterschiede

Ein Interpreter ist ein Dienstprogramm, dassowie ein Compiler, der Quellcode in Maschinencode übersetzen soll. Im Gegensatz zum Compiler läuft der Interpreter jedoch jedes Mal mit dem Programm mit und führt die Übersetzung zeilenweise durch.

Man kann sagen, dass der Compiler und der Interpreter Sprachprozessoren sind, die es dem Computer ermöglichen, vom Programmierer gegebene Befehle zu erkennen und auszuführen.

Compiler-Klassifizierung

Compiler ist ein Programm
Compiler ist ein Programm

Compiler werden hauptsächlich nach Merkmalen klassifiziert, die sich auf ihre praktischen Anwendungsbereiche beziehen.

Vectorizing Compiler ist ein Dienstprogramm, das Quellcode in Objektcode übersetzt und für Computer geeignet ist, die mit Vektorprozessoren ausgestattet sind.

Ein flexibler Compiler wird modular in einer Hochsprache programmiert. Die Verw altung erfolgt über Tabellen. Es ist auch möglich, es mit dem Compiler von Compilern auszuführen.

Inkrementeller Compiler ist ein Sprachprozessor, der einzelne Fragmente des Quellcodes und Zusätze neu übersetzt. Es wird jedoch vermieden, die gesamte Anwendung neu zu kompilieren.

Ein interpretierender (Schritt-) Compiler ist ein Dienstprogramm, das nacheinander eine unabhängige Kompilierung jeder Anweisung oder jedes Befehls eines High-Level-Quellcodes durchführt.

Ein Compiler von Compilern ist ein Übersetzer, der in der Lage ist, eine formale Beschreibung für eine Programmiersprache zu akzeptieren und unabhängig einen Compiler für jede Sprache zu generieren.

Compiler und Interpreter
Compiler und Interpreter

Mit dem Debug-Compiler können Sie einige Arten von Syntaxfehlern finden und beheben, die beim Schreiben des Quellcodes aufgetreten sind

Ein residenter Compiler belegt einen festen Platz im Arbeitsspeicher und ist daher für eine Vielzahl von Aufgaben wiederverwendbar.

Der selbstkompilierte Compiler ist in der gleichen Sprache wie die Übersetzung geschrieben.

Der universelle Compiler basiert auf einer formalen Beschreibung der semantischen und syntaktischen Parameter der Eingabesprache. Die Hauptkomponenten eines solchen Dienstprogramms sind der Kern, syntaktische und semantische Ladeprogramme.

Compilergerät

Ein Compiler und ein Linker sind das Herzstück eines jeden Compilers. Häufig wird beim Kompilieren ein externer Linker verwendet, und der Compiler selbst führt nur die Übersetzungsfunktion aus. Es kommt auch vor, dass der Compiler als eine Art Managerprogramm implementiert ist, das dem Übersetzer (oder Übersetzern, wenn beim Schreiben des Quellcodes unterschiedliche Programmiersprachen verwendet wurden) und dem Linker zugeordnet ist und deren Ausführung bei Bedarf startet.

Programmiersprachen und Übersetzungsmethoden

Sprach-Compiler
Sprach-Compiler

Trotz der Tatsache, dass ein in jeder Programmiersprache geschriebenes Programm sowohl kompiliert als auch interpretiert werden kann, haben viele Hochsprachen eine Prädisposition für die eine oder andere Übersetzungsmethode. Die Sprache C wurde also ursprünglich für die Kompilierung und Java für die Interpretation des geschriebenen Programms entwickelt. Werden entwickeltC-Compiler sind recht einfach, dank ihrer relativ niedrigen Ebene und einer kleinen Anzahl von Strukturelementen.

Vor- und Nachteile von Compilern und Interpretern. Anwendungen

Beachten Sie, dass kompilierte Anwendungen schneller sind als interpretierte, aber gleichzeitig hängt der als Ergebnis der Kompilierung erh altene Maschinencode von der Hardwareplattform ab. Ein für Windows geschriebenes und kompiliertes Programm funktioniert also beispielsweise nicht unter Linux. Daher verwenden Internetanwendungen, wenn nicht vorhergesagt werden kann, in welcher Umgebung sie funktionieren, Interpretation oder Bytecode (in diesem Fall wird das Quellprogramm in eine Zwischenform umgewandelt, die auf unterschiedlicher Hardware ausgeführt werden kann Plattformen).

Empfohlen: