Heim >häufiges Problem >Was kann ein in einer Hochsprache geschriebenes Quellprogramm in ein Zielprogramm umwandeln?

Was kann ein in einer Hochsprache geschriebenes Quellprogramm in ein Zielprogramm umwandeln?

青灯夜游
青灯夜游Original
2020-11-03 17:02:4156577Durchsuche

Der „Compiler“ wandelt ein in einer Hochsprache geschriebenes Quellprogramm in ein Zielprogramm um. Ein Compiler bezieht sich auf ein Übersetzungsprogramm, das ein in einer höheren Programmiersprache geschriebenes Quellprogramm in ein äquivalentes Zielprogramm im Maschinensprachenformat übersetzt. Ein Compiler verwendet ein in einer höheren Programmiersprache geschriebenes Quellprogramm als Eingabe und verwendet Assembler oder Maschinensprache als Eingabe. Stellt das Zielprogramm als Ausgabe dar.

Was kann ein in einer Hochsprache geschriebenes Quellprogramm in ein Zielprogramm umwandeln?

Was ein in einer Hochsprache geschriebenes Quellprogramm in ein Zielprogramm umwandelt, ist ein „Compiler“. Das in einer Hochsprache geschriebene Programm wird als „Quellprogramm“ bezeichnet, und das durch Binärcode dargestellte Programm wird als „Zielprogramm“ bezeichnet vom „Compiler“ vervollständigt.

Compiler (Compilerprogramm), auch Compiler genannt, bezieht sich auf ein Übersetzungsprogramm, das ein in einer höheren Programmiersprache geschriebenes Quellprogramm in ein entsprechendes Zielprogramm im Maschinensprachenformat übersetzt. Compiler sind Übersetzungsprogramme, die mithilfe eines generativen Implementierungsansatzes implementiert werden.

Der Compiler verwendet ein in einer höheren Programmiersprache geschriebenes Quellprogramm als Eingabe und ein in Assemblersprache oder Maschinensprache ausgedrücktes Zielprogramm als Ausgabe. Das kompilierte Zielprogramm durchläuft in der Regel auch eine laufende Phase, um mit Unterstützung des laufenden Programms abzulaufen, die Ausgangsdaten zu verarbeiten und die erforderlichen Berechnungsergebnisse zu berechnen.

Funktionen

Der Compiler muss das Quellprogramm analysieren und es dann in das Zielprogramm synthetisieren. Überprüfen Sie zunächst die Korrektheit des Quellprogramms und zerlegen Sie es in mehrere Grundkomponenten. Zweitens erstellen Sie auf Basis dieser Grundkomponenten entsprechende äquivalente Zielprogrammteile. Um diese Aufgaben zu erledigen, muss der Compiler während der Analysephase einige Tabellen erstellen und das Quellprogramm in eine Zwischensprachform umwandeln, damit es während der Analyse und Synthese leicht referenziert und verarbeitet werden kann.

Hauptdatenstrukturen, die bei der Datenstrukturanalyse und -synthese verwendet werden, einschließlich Symboltabellen, Konstantentabellen und Zwischensprachenprogrammen. Die Symboltabelle besteht aus den im Quellprogramm verwendeten Bezeichnern zusammen mit ihren Attributen, zu denen Typen (wie Variablen, Arrays, Strukturen, Funktionen, Prozeduren usw.), Typen (wie ganze Zahlen, reelle Typen, Zeichenfolgen, komplexe Typen) gehören , Etiketten) usw.) und andere vom Zielprogramm benötigte Informationen. Die Konstantentabelle besteht aus den im Quellprogramm verwendeten Konstanten, einschließlich der Maschinendarstellung der Konstanten, und den ihnen zugeordneten Zielprogrammadressen. Ein Zwischensprachenprogramm ist eine Zwischenform eines Programms, das vor der Übersetzung des Quellprogramms in das Zielprogramm eingeführt wird. Die Wahl seiner Darstellung hängt davon ab, wie der Compiler es später verwenden und verarbeiten wird. Zu den häufig verwendeten Zwischensprachenformen gehören die polnische Darstellung, Dreier-, Vierer- und indirekte Dreierformen.

Die Analyse eines Teils des Quellprogramms erfolgt in drei Schritten: lexikalische Analyse, Syntaxanalyse und semantische Analyse. Die lexikalische Analyse wird durch ein lexikalisches Analyseprogramm (auch Scanner genannt) vervollständigt, dessen Aufgabe darin besteht, Wörter zu identifizieren (d. h. Bezeichner, Konstanten, reservierte Wörter und verschiedene Operatoren, Satzzeichen usw.), Symboltabellen und Konstantentabellen zu erstellen und konvertieren Das Quellprogramm wird in eine interne Form konvertiert, die vom Compiler leicht analysiert und verarbeitet werden kann. Der Syntaxanalysator ist der Kernbestandteil des Compilers. Seine Hauptaufgabe besteht darin, zu überprüfen, ob das Quellprogramm den grammatikalischen Regeln der Sprache entspricht. Wenn es nicht grammatikalisch ist, wird eine Syntaxfehlermeldung ausgegeben. Wenn es grammatikalisch ist, wird die grammatikalische Struktur des Quellprogramms zerlegt und ein internes Programm in Form einer Zwischensprache erstellt. Der Zweck der grammatikalischen Analyse besteht darin, zu verstehen, wie Wörter Sätze bilden und wie Aussagen Programme bilden. Das semantische Analyseprogramm prüft außerdem die semantische Korrektheit legaler Programmstrukturen. Sein Zweck besteht darin, die korrekte Verwendung von Bezeichnern und Konstanten sicherzustellen, notwendige Informationen in Symboltabellen oder Zwischensprachprogrammen zu sammeln und eine entsprechende semantische Verarbeitung durchzuführen.

Das obige ist der detaillierte Inhalt vonWas kann ein in einer Hochsprache geschriebenes Quellprogramm in ein Zielprogramm umwandeln?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn