Heim  >  Artikel  >  Was ist erforderlich, um ein in einer höheren Programmiersprache geschriebenes Programm in ein gleichwertiges ausführbares Programm umzuwandeln?

Was ist erforderlich, um ein in einer höheren Programmiersprache geschriebenes Programm in ein gleichwertiges ausführbares Programm umzuwandeln?

王林
王林Original
2021-01-12 14:41:2631341Durchsuche

Die Konvertierung eines in einer höheren Programmiersprache geschriebenen Programms in ein gleichwertiges ausführbares Programm erfordert Kompilierung und Verknüpfung. Hochrangige Programmiersprachen können die unterschiedlichen Einschränkungen von Computeranweisungssystemen und Zufallsmaschinen in Maschinensprache beseitigen und Quellprogramme in Zielcodes umwandeln, die die CPU erkennen kann.

Was ist erforderlich, um ein in einer höheren Programmiersprache geschriebenes Programm in ein gleichwertiges ausführbares Programm umzuwandeln?

Die Betriebsumgebung dieses Artikels: Windows 10-System, Thinkpad T480-Computer.

Die Konvertierung eines in einer höheren Programmiersprache geschriebenen Programms in ein gleichwertiges ausführbares Programm erfordert Kompilierung und Verknüpfung.

Das vom Benutzer geschriebene Quellprogramm wird in ein Zielprogramm kompiliert, dieses Programm kann jedoch noch nicht ausgeführt werden. Denn die im Programm verwendeten Standard-Funktionsunterprogramme und Ein-/Ausgabe-Unterprogramme sind noch nicht eingebunden. Daher muss es verbunden und zusammengestellt werden, um ein unabhängiges lauffähiges Programm zu werden.

Einführung in höhere Programmiersprachen

Hochwertige Programmiersprachen, auch „Algorithmensprachen“ oder kurz „Hochsprachen“ genannt. Eine Programmiersprache zum Schreiben von Programmen in einer formalen Sprache, die leicht zu schreiben und zu verstehen ist. Es kann die unterschiedlichen Einschränkungen von Computeranweisungssystemen und Zufallsmaschinen in Maschinensprache beseitigen und entsprechende Compiler (oder „Compiler“) entwerfen, um Quellprogramme, die in Hochsprachen geschrieben sind, die für verschiedene Maschinen geeignet sind, in solche umzuwandeln, die erkannt werden können durch den zentralen Prozessor.

Gemäß den grundlegenden Spezifikationen zur Beschreibung des Berechnungsprozesses wird er in prozedurale Sprachen (wie FORTRAN-Sprache, PASCAL-Sprache, Ada-Sprache usw.), funktionale Sprachen (wie LISP-Sprache) und logische Sprachen unterteilt ​​(wie die PROLOG-Sprache) und objektorientierte Sprachen (Es besteht aus der Hinzufügung einer gewissen Unterstützung für objektorientierte Beschreibungsmechanismen zu den vorherigen Sprachen).

Der Dolmetscher ist eine Art Hochsprachen-Übersetzungsprogramm. Er nimmt ein in der Quellsprache geschriebenes Quellprogramm und interpretiert es in einen von der Maschine erkannten Binärcode, der an den Computer übermittelt wird Es bildet kein Zielprogramm.

Bearbeiten bedeutet, das Quellprogramm zu schreiben. Bei der Kompilierung geht es darum, ein Quellprogramm in einer Hochsprache als Eingabe zu verwenden, eine Übersetzung und Konvertierung durchzuführen, um ein Zielprogramm in Maschinensprache zu erstellen, und dann den Computer das Zielprogramm ausführen zu lassen.

Quellprogramm in ausführbares Programm konvertieren

Um ein Programm auszuführen, muss es vier Schritte durchlaufen: Vorverarbeitung, Kompilierung, Assemblierung und Verknüpfung.

1. Vorverarbeitung: Aggregieren Sie Quellprogramme (.c-Dateien), die in verschiedenen Dateien gespeichert sind, und ersetzen Sie Makros in der Sprache, z. B. die Vorverarbeitungsanweisung #include, damit der Compiler die enthaltene Datei öffnen und ihr Programm in andere Programme konvertieren kann .i-Dateien generieren.

2. Kompilierung: Quellprogramm (.i-Datei) in Assembler (.s-Datei) vorverarbeiten

3. Assembly (Assembler): Konvertieren des Assemblers in verschiebbar (das heißt, der Code in der Datei) Die Adressen von Segmenten und Die Daten sind noch nicht finalisiert. In diesem Schritt wird die Objektdatei (.obj- oder .o-Datei) generiert.

4. Linker/Loader: Beim Verknüpfen wird die Zieldatei mit anderen separat kompilierten Programmmodulen (sofern vorhanden) und den vom System bereitgestellten Standardbibliotheksfunktionen verbunden, um beim Ausführen der Datei einen Code zu generieren und die Daten werden beim Laden an der entsprechenden Stelle im Speicher abgelegt. Dieser Schritt generiert die endgültige ausführbare Datei.

Was ist erforderlich, um ein in einer höheren Programmiersprache geschriebenes Programm in ein gleichwertiges ausführbares Programm umzuwandeln?

Erweiterte Kenntnisse:

  • Quellprogramm:

    Quellprogramm bezieht sich auf eine nicht kompilierte Textdatei, die gemäß bestimmten Programmiersprachenspezifikationen geschrieben wurde. Es handelt sich um eine Reihe von für Menschen lesbaren Anweisungen in Computersprache.

    Das Quellprogramm kann nicht direkt auf dem Computer ausgeführt werden. Sie müssen einen „Compiler“ verwenden, um das Quellprogramm in Binärcode zu kompilieren.

  • Zielprogramm:

    Der durch Kompilieren des Quellprogramms durch einen „Compiler“ erhaltene Binärcode wird als Zielprogramm bezeichnet.

    Das Zielprogramm bezieht sich auf eine Sammlung von Maschinencodes, die direkt vom Computer ausgeführt werden können Das Quellprogramm wurde kompiliert. Es wird als .obj als Erweiterung in die Computerdatei geschrieben Generieren Sie ein Zielprogramm, das vom Computer ausgeführt werden kann.

  • Einfach ausgedrückt ist ein ausführbares Programm ein vollständiges Programm, das unabhängig unter dem Betriebssystem ausgeführt werden kann, indem das Zielprogramm und die Bibliotheksfunktion verbunden werden.
  • Die Erweiterung des ausführbaren Programms ist „.exe“ (in der DOS-/Windows-Umgebung). ).

    (Lernvideo-Sharing:

    Programmiervideo

    )

Das obige ist der detaillierte Inhalt vonWas ist erforderlich, um ein in einer höheren Programmiersprache geschriebenes Programm in ein gleichwertiges ausführbares Programm umzuwandeln?. 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