Was ist der Unterschied zwischen Objektdatei und ausführbarer Datei?

Inhaltsverzeichnis:

Anonim

Die Hauptunterschied zwischen Objektdatei und ausführbarer Datei ist das eine Objektdatei ist eine Datei, die nach dem Kompilieren des Quellcodes erzeugt wird, während eine ausführbare Datei eine Datei ist, die nach dem Verknüpfen eines Satzes von Objektdateien unter Verwendung eines Linkers erzeugt wird.

C ist eine allgemeine Programmiersprache auf hoher Ebene. Darüber hinaus ist es eine strukturierte Programmiersprache, die hilft, effiziente Programme zu schreiben. Betriebssysteme, Sprachcompiler, Texteditoren, Netzwerktreiber, Datenbanken sind einige Anwendungen der Programmiersprache C. Objektdatei und ausführbare Datei sind zwei Dateien, die sich auf die C-Programmierung beziehen.

C-Sprache, ausführbare Datei, Objektdatei

Was ist Objektdatei?

Zuallererst ist ein C-Programm ein Satz von Anweisungen, die in der Programmiersprache C geschrieben sind, um eine bestimmte Aufgabe auszuführen. Dieses Programm wird als Quellcode bezeichnet. Der Programmierer kann den Quellcode lesen und verstehen, aber die CPU versteht ihn nicht. Daher ist es notwendig, den Quellcode in ein maschinenlesbares Format zu konvertieren. Nach dem Kompilieren des Quellcodes wird ein Objektcode generiert.

Abbildung 1: Quellcode

Objektdatei ist ein anderer Name für Objektcode. Die Objektdatei hat in der Windows-Umgebung die Erweiterung.obj. Darüber hinaus hat die Objektdatei die. o Dateierweiterung in einer Linux-Umgebung. Die CPU kann die Objektdatei jedoch nicht direkt ausführen.

Was ist eine ausführbare Datei?

Wenn nach dem Schreiben des C-Programms Syntaxfehler auftreten, sollte der Programmierer diese bearbeiten. Wenn jedoch keine Syntaxfehler vorliegen, konvertiert der Compiler den Quellcode in eine Objektdatei. Dann führt der Linker den Verknüpfungsprozess durch. Es nimmt eine oder mehrere vom Compiler erzeugte Objektdateien und kombiniert sie zu einer einzigen ausführbaren Datei. Außerdem verknüpft es die anderen Programmdateien und Funktionen, die das Programm benötigt. Wenn das Programm beispielsweise die Funktion „exp()“ hat, verknüpft der Linker das Programm mit der mathematischen Bibliothek des Systems.

Abbildung 2: Erstellen einer ausführbaren Datei

Der Programmierer versteht die Anweisungen in der ausführbaren Datei nicht, aber die CPU kann diese Anweisungen lesen und verstehen. Daher führt die CPU die ausführbare Datei direkt aus, um die definierten Aufgaben im Programm auszuführen.

Beziehung zwischen Objektdatei und ausführbarer Datei

Unterschied zwischen Objektdatei und ausführbarer Datei

Definition

Eine Objektdatei ist eine Datei, die einen Objektcode enthält, der einen Maschinencode im verschiebbaren Format hat, der nicht direkt ausführbar ist. Eine ausführbare Datei ist eine Datei, die direkt vom Computer ausgeführt werden kann und die angegebenen Aufgaben gemäß den codierten Anweisungen ausführen kann. Daher erklärt dies den Hauptunterschied zwischen Objektdatei und ausführbarer Datei.

Typ

Ein weiterer Unterschied zwischen Objektdatei und ausführbarer Datei besteht darin, dass eine Objektdatei eine Zwischendatei ist, eine ausführbare Datei jedoch eine endgültige Datei.

Funktionalität

Direkte Ausführung durch CPU

Außerdem kann die CPU die Objektdatei nicht direkt ausführen, während die CPU eine ausführbare Datei direkt ausführen kann. Dies ist also ein wesentlicher Unterschied zwischen Objektdatei und ausführbarer Datei.

Abschluss

Zusammenfassend lässt sich sagen, dass Objektdatei und ausführbare Datei zwei Dateien sind, die sich auf die C-Programmierung beziehen. Der Hauptunterschied zwischen einer Objektdatei und einer ausführbaren Datei besteht darin, dass eine Objektdatei eine Datei ist, die nach dem Kompilieren des Quellcodes generiert wird, während eine ausführbare Datei eine Datei ist, die nach dem Verknüpfen eines Satzes von Objektdateien mit einem Linker generiert wird.

Referenz:

1. „Linker (Computing).“ Wikipedia, Wikimedia Foundation, 6. Oktober 2018, hier verfügbar.

Bild mit freundlicher Genehmigung:

1. „Quellcode in C“ von Romainhk – Eigene Arbeit (Bild und Code) (CC BY-SA 3.0) über Commons Wikimedia2. „C-Spracherstellungsschritte“ (CC BY-SA 3.0) über Commons Wikimedia

Was ist der Unterschied zwischen Objektdatei und ausführbarer Datei?