Heim >Backend-Entwicklung >C#.Net-Tutorial >Was ist ein C-Compiler?

Was ist ein C-Compiler?

青灯夜游
青灯夜游Original
2021-02-26 11:39:5515503Durchsuche

C-Compiler, auch C-Sprach-Compiler genannt, bezieht sich auf ein Übersetzungsprogramm, das ein in C-Sprache geschriebenes Quellprogramm in ein entsprechendes Zielprogramm im Maschinensprachenformat übersetzt. Der C-Compiler überprüft zunächst die Korrektheit des Quellprogramms und zerlegt es in eine Reihe von Grundkomponenten. Anschließend erstellt er auf Basis dieser Grundkomponenten entsprechende äquivalente Zielprogrammteile.

Was ist ein C-Compiler?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, c99-Version, Dell G3-Computer.

c-Compiler ist eine Reihe von Software, die von Computerherstellern bereitgestellt wird. Ein C-Compiler, auch C-Sprach-Compiler genannt, bezieht sich auf ein Übersetzungsprogramm, das ein in C-Sprache geschriebenes Quellprogramm in ein entsprechendes Zielprogramm im Maschinensprachenformat übersetzt.

Der Compiler ist ein Übersetzungsprogramm, das mithilfe eines generativen Implementierungsansatzes implementiert wird. Als Eingabe wird ein in einer höheren Programmiersprache geschriebenes Quellprogramm und als Ausgabe ein in Assemblersprache oder Maschinensprache ausgedrücktes Zielprogramm benötigt. 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.

Die Grundfunktion eines Compilers besteht darin, Quellprogramme (Hochsprachen) in Zielprogramme zu übersetzen. Als Kompilierungssystem mit praktischem Anwendungswert sollte es jedoch neben den Grundfunktionen auch über wichtige Funktionen wie Syntaxprüfung, Debugging-Maßnahmen, Änderungsmethoden, Abdeckungsverarbeitung, Zielprogrammoptimierung, Verwendung verschiedener Sprachen und Mensch-Computer verfügen Kontakt.

  • ① Grammatikprüfung: Überprüfen Sie, ob das Quellprogramm grammatikalisch ist. Wenn es sich nicht um einen grammatikalischen Fehler handelt, sollte der Compiler auf den Ort, die Art und relevante Informationen des grammatikalischen Fehlers hinweisen. Das kompilierte Programm soll es dem Benutzer ermöglichen, möglichst viele Fehler auf einmal zu erkennen.

  • ②Debugging-Maßnahmen: Überprüfen Sie, ob das Quellprogramm der Absicht des Designers entspricht. Zu diesem Zweck muss der Compiler einige Ausgabeanweisungen in das kompilierte Zielprogramm einfügen, damit Informationen über die dynamische Ausführung des Programms ausgegeben werden können, wenn das Zielprogramm ausgeführt wird, wie z. B. Änderungen in Variablenwerten, die Schaltkreise während des Programms erfahren Ausführung usw. Mithilfe dieser Informationen können Benutzer überprüfen und überprüfen, ob das Quellprogramm die Algorithmusanforderungen ausdrückt.

  • ③Änderungsmethode: Bieten Sie Benutzern eine einfache Methode zum Ändern des Quellprogramms. Compiler bieten in der Regel Batch-Modifikationsmittel (zum Modifizieren einer großen Anzahl von Fehlern, die vorübergehend schwer zu modifizieren sind) und Vor-Ort-Modifikationsmittel (zum Modifizieren einer kleinen Anzahl von Fehlern, die zur Laufzeit vorübergehend leicht zu modifizieren sind).

  • ④ Abdeckungsverarbeitung: Sie ist hauptsächlich für die Bearbeitung umfangreicher Problemprogramme mit langen Programmen und großen Datenmengen konzipiert. Die Grundidee besteht darin, einige Programmsegmente und Daten bestimmte Speicherbereiche gemeinsam zu nutzen, in denen nur die aktuell verwendeten Programme oder Daten gespeichert werden. Die verbleibenden Programme und Daten, die vorübergehend nicht verwendet werden, werden zunächst in Hilfsspeichern wie Datenträgern gespeichert. und können bei Bedarf dynamisch übertragen werden.

  • ⑤ Zielprogrammoptimierung: Verbessern Sie die Qualität des Zielprogramms, das heißt, es benötigt weniger Speicherplatz und die Laufzeit des Programms ist kurz. Abhängig von den Optimierungszielen kann der Compiler wählen, ob er Ausdrucksoptimierung, Schleifenoptimierung oder globale Programmoptimierung implementiert. Einige Zielprogrammoptimierungen werden auf der Quellprogrammebene und andere auf der Zielprogrammebene durchgeführt.

  • ⑥ Verwendung in verschiedenen Sprachen: Seine Funktion hilft Benutzern, Anwendungen mit mehreren Programmiersprachen zu schreiben oder vorhandene Programmmodule anzuwenden, die in verschiedenen Sprachen geschrieben sind. Am gebräuchlichsten ist die Kombination aus Hochsprache und Assemblersprache. Dies kann nicht nur die Schwierigkeit von Hochsprachen beim Ausdrücken bestimmter nichtnumerischer Verarbeitungsvorgänge oder der direkten Steuerung und des Zugriffs auf Peripheriegeräte und Hardwareregister ausgleichen, sondern erleichtert auch das Schreiben von Kernprogrammen in Assemblersprache, um die Betriebseffizienz zu verbessern.

  • ⑦ Mensch-Maschine-Verbindung: Erzielen Sie gut gestaltete Funktionen bei der Festlegung des Compiler-Implementierungsplans. Der Zweck besteht darin, Benutzern das rechtzeitige Verständnis der internen Arbeitsbedingungen während der Kompilierungs- und Ausführungsphase zu erleichtern und den Betrieb des Systems effektiv zu überwachen und zu steuern.

Der Implementierungsplan des frühen Compilers bestand darin, die oben genannten Funktionen vollständig in den Compiler zu integrieren. Üblicherweise werden jedoch Debugger, Editoren und Verbindungsassembler mit Unterstützung des Betriebssystems konfiguriert, um das Debuggen, Ändern, Überschreiben und Integrieren von Funktionen in verschiedenen Sprachen zu unterstützen. Beim Entwerfen eines Compilers müssen jedoch Aspekte wie die Schnittstelle zu diesen Subsystemen sorgfältig berücksichtigt werden.

【Verwandte Empfehlung: „C-Sprachvideo-Tutorial“】

Das obige ist der detaillierte Inhalt vonWas ist ein C-Compiler?. 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