Heim  >  Artikel  >  Backend-Entwicklung  >  Was für eine kompilierte Sprache ist die C-Sprache?

Was für eine kompilierte Sprache ist die C-Sprache?

王林
王林Original
2019-11-01 16:47:474482Durchsuche

Was für eine kompilierte Sprache ist die C-Sprache?

Was ist der Kompilierungsmodus?

Der Kompilierungsmodus bezieht sich darauf, wie Programmcode und Daten im Speicher abgelegt werden, wie Stapel zugewiesen werden und wie die belegte Speichergröße bestätigt wird und wie auf sie zugegriffen wird, wenn der Speichermodus (Kompilierungsmodus) angegeben ist , die Sprache Der Compiler kompiliert und organisiert das Programm entsprechend dem vorgewählten Speichermodus.

Die C-Sprache bietet 6 Kompilierungsmodi. Diese 6 Modi sind: Tiny, Small, Medium, Compact, Large und Giant Mode (Huge). Benutzer können entsprechend ihrer eigenen Programmgröße und ihren Bedürfnissen wählen.

C-Sprachkompilierungsmodus – Mikromodus (Tiny) – Nahzeiger

Im Mikromodus werden die Daten und der Code im Programm im selben Abschnitt platziert. das heißt, sie überschreiten nicht 64 KB. Im Mikromodus sind die Segmentadressen des Codesegments, des Stapelsegments und des Datensegments alle gleich, dh CS = DS = SS = ES.

C-Sprachkompilierungsmodus – Kleiner Modus (Klein)

Im kleinen Modus wird der Code im Programm im 64-KB-Codesegment platziert und die Daten werden platziert in den 64 KB innerhalb des Datensegments. Im kleinen Modus zeigen das Stapelsegment, das zusätzliche Datensegment und das Datensegment alle zu einer Adresse, d. h. DS=SS=ES. Im Allgemeinen werden die Zeiger im kleinen Modus kompiliert .

C-Sprachkompilierungsmodus – Mittel

Im mittleren Modus werden alle Daten in einem 64-KB-Datensegment platziert, daher wird die Menge im Datensegment verwendet Der Code kann größer als 64 KB sein (erlaubt bis zu 1 MB), sodass er in verschiedenen Codesegmenten (weit entfernte Zeiger) verwendet werden kann. Codemodule aus unterschiedlichen Quelldateien werden in unterschiedlichen Codeabschnitten platziert.

C-Sprachkompilierungsmodus – Kompaktmodus (Kompakt)

Wenn die Datenmenge im Kompaktmodus 64 KB überschreitet, können sie in mehreren Datensegmenten platziert werden Der Zeiger im Inneren ist (weit). Die Codemenge überschreitet nicht 64 KB und liegt innerhalb eines Segments, sodass die Zeiger innerhalb des Codesegments nahe beieinander liegen. In diesem Modus dürfen statische Daten jedoch immer noch nicht größer als 64 KB sein und der Heap verwendet Fernzeiger für den Zugriff. Code, statische Daten, Stapel und Heap haben jeweils ihre eigenen Segmente. Es gibt nur Fernpfähle, keine Nahpfähle.

C-Sprachkompilierungsmodus – Großer Modus (Groß)

Im großen Modus verwenden sowohl Code als auch Daten Fernzeiger und beide können 1 MB erreichen. Statische Daten, Stapel und Heap entsprechen dem Kompaktmodus und der Code entspricht dem Mittelmodus. Statische Daten bleiben die gleichen wie im Kompaktmodus und dürfen 64 KB nicht überschreiten.

C-Sprachkompilierungsmodus – Huge-Modus (Huge)

Im Huge-Modus verwenden sowohl das Codesegment als auch das Datensegment Fernzeiger und der Code wird verteilt Verschiedene Codesegmente, die Daten sind auch auf verschiedene Datensegmente verteilt, sie stammen aus unterschiedlichen Quellprogrammen und es gibt nur einen großen Stapel. Und die statische Datengröße darf 64 KB überschreiten.

Empfohlenes Tutorial: C-Sprach-Tutorial

Das obige ist der detaillierte Inhalt vonWas für eine kompilierte Sprache ist die C-Sprache?. 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
Vorheriger Artikel:So führen Sie C++ ausNächster Artikel:So führen Sie C++ aus