C
Dieser Artikel befindet sich im Aufbau und ist vorläufig als Entwurf einzustufen. |
Dieser Artikel behandelt die Programmiersprache C in Sicht der Commodore Computersysteme.
Allgemeines[Bearbeiten | Quelltext bearbeiten]
C wurde zwischen 1969 und 1973 in den Bell Laboratories von Dennis Ritchie zur Programmierung von Unix entwickelt. Ritchie baute dafür auf die von Ken Thompson und ihm selbst schon vorher entwickelte Sprache B auf. 1973 wurde der bis dahin in Assembler entwickelte Unix-Kernel nahezu komplett in C umgeschrieben.
Wie auch bei allen höheren Programmiersprachen, die als Ziel Maschinencode produzieren, profitiert auch C von CPUs mit vielen Registern in der Größe passend zum jeweiligen Datenmodell und entsprechenden Adressierungsarten für den Stack-Frame-Zugriff. Die 6510-CPU besitzt davon aber im Vergleich zu anderen CPUs nur wenige Register und Adressierungsarten, die sich nicht sonderlich für die Hochsprachen-Code-Generierung eignen. Deshalb und wegen geringerer Größe der assemblierten Programme gegenüber compiliertem C-Code bevorzugen die meisten Programmierer auf dem C64 direktes Assembler für maschinennahe Programmierung.
Implementierungen[Bearbeiten | Quelltext bearbeiten]
C64[Bearbeiten | Quelltext bearbeiten]
- Small C Compiler (mit CP/M-Modul)
- Super-C (=Profi-C, C-Compiler 64) (Data Becker)
- Power C (Spinnaker)
- cc64, LibC
C128[Bearbeiten | Quelltext bearbeiten]
- C-Compiler-128 (Data Becker)
- Power C (Spinnaker)
- Super-C (=Profi-C) (Data Becker)
C128 im CP/M-Modus[Bearbeiten | Quelltext bearbeiten]
Cross-Entwicklung[Bearbeiten | Quelltext bearbeiten]
- cc65, ein komplettes Cross-Entwicklungspaket für 65(C)02 basierte Systeme, mit mächtigem Macro-Assembler, einem C-Kompiler, Linker, und Bibliotheken.
- Aztec C, unter MS-DOS, kommerziell
- llvm-mos, eine Clang-/LLVM-Variante mit dem Mikroprozessor 65C02 als Zielplattform. Unterstützt unter anderem Assembler und etwas eingeschränktes C und C++11. Generiert relativ gut optimierten Maschinencode.
- Oscar64, monolithischer Ansatz ohne Assembler und Linker
Literatur[Bearbeiten | Quelltext bearbeiten]
- R. Heigenmoser: Das C-Anwender Handbuch
Weblinks[Bearbeiten | Quelltext bearbeiten]
Wikipedia: C (Programmiersprache) |
- Beispielprogramme in C der BASIC Beispielprogramm hier im Wiki
- ev, "Sprachen für Computer (2)" in 64'er 5/1985, S. 46ff
- cc65 Cross-Compiler
- Aztec C Cross-Compiler