it-swarm.dev

Was ist die Geschichte des C-Compilers?

Wenn wir sagen, dass "Dennis Ritchie die C-Sprache entwickelt hat", meinen wir damit, dass er einen Compiler erstellt hat (der eine "bereits" entwickelte andere Sprache verwendet), der den in C-Sprache geschriebenen Quellcode kompilieren kann? Wenn ja, in welcher Sprache hat er den ersten C-Compiler geschrieben? Ich verstehe, dass ein Compiler ein Programm ist und wir mit dem derzeit verfügbaren C-Compiler einen weiteren Compiler für die C-Sprache erstellen können. Ist das korrekt?

24
KawaiKx

Von Wiki :

Ritchie ist am besten als Schöpfer der Programmiersprache C und Hauptentwickler des Unix-Betriebssystems sowie als Co-Autor des endgültigen Buches über C bekannt.

Auch von Wiki :

Der erste von Dennis Ritchie geschriebene C-Compiler verwendete einen rekursiven Abstiegsparser, enthielt spezifisches Wissen über den PDP-11 und stützte sich auf einen optionalen maschinenspezifischen Optimierer, um den von ihm generierten Assembler-Code zu verbessern.

Der erste C-Compiler wurde ebenfalls von ihm in Assembly geschrieben.

Diese Seite von bell-labs beantwortet die meisten Ihrer Fragen.

23
karlphillip

Schauen Sie sich dies für eine Geschichtsstunde an: http://www.livinginternet.com/i/iw_unix_c.htm

Als der PDP-11-Computer bei Bell Labs ankam, baute Dennis Ritchie auf B auf, um eine neue Sprache namens C zu erstellen, die Thompsons Geschmack für präzise Syntax erbte und eine leistungsstarke Mischung aus Funktionen auf hoher Ebene und den detaillierten Funktionen zum Programmieren eines Betriebs aufwies System. Die meisten Komponenten von Unix wurden schließlich in C umgeschrieben, was 1973 mit dem Kernel selbst gipfelte

Auch dies könnte interessant sein: http://cm.bell-labs.com/cm/cs/who/dmr/chist.html

9
abalogh

Dennis Ritchie verwendete Bootstrapping . Bootstrapping ist eine einfache Idee, bei der Sie einen anfänglichen, einfachen Compiler in Assembly entwickeln und dann diesen einfachen Compiler verwenden, um Ihren vollwertigen Compiler zu kompilieren, der in (einer Teilmenge) Ihrer Zielsprache geschrieben ist. So hat Ritchie sehr früh last1120c Compiler erstellt.

9
vartec

C wurde entwickelt, um Unix auf andere Plattformen zu portieren, ohne den gesamten Assembly-Code für die neue Plattform neu schreiben zu müssen.

Daher das allgemeine Sprichwort "C ist ein tragbarer Assembler". Dies spiegelt wider, dass C auf Abstraktionsebene absichtlich einer CPU (ab etwa 1970) sehr nahe kommt und auch der Grund dafür ist, dass die meisten eingebetteten Programme in einer Art C geschrieben sind.

C ist also eng mit Unix verbunden, und die Unix-Leute haben den ersten C-Compiler geschrieben, der auf früheren Arbeiten basiert, um das zu tun, was sie brauchten.

Bitte beachten Sie, dass Kernigan und Richie ein ausgezeichnetes Buch über C geschrieben haben, das wahrscheinlich eines der einflussreichsten Nachschlagewerke zu einer Computersprache ist, da es so klar und prägnant war, dass die meisten Leser fortgeschrittene Themen wie Zeiger und Rekursion daraus lernen konnten.

2
user1249

Dieser Artikel sollte Ihre Frage beantworten:

http://www.faqs.org/docs/artu/c_evolution.html

Die Geschichte von C ist an die B-Sprache gebunden, für die Ken Thompson einen Dolmetscher entwickelt hat. Ritchie verwendete es für die ersten Stufen der C-Entwicklung.

2
Macmade