Technische Informatik; Hardwarenahe Programmierung

Programmerstellung

Inhalt

Die Umsetzung der Quelltexte (engl.: Sourcecode), d.h. der Textdateien, die den Programmtext enthalten, in einen Programmcode, d.h. binäre Dateien, die von einem Computer ausführbar sind, erfolgt in C/C++ in drei Schritten: Präprozessor; Compiler; Linker.

Der Präprozessor bearbeitet zuerst die Quelltexte und sucht nach Präprozessor-Direktiven (z.B. #include fügt die angegebene Dateie an der entsprechenden Position ein). Dabei hat er noch weitere Aufgaben: Konstanten und Makros definieren und ersetzen (#define) und Teile des Quelltextes während des Compilierens selektieren (#ifdef / #ifndef).

Der Compiler wandelt den so geänderten Code in sogenannten Objektcode (.obj-Datei) um, der aber noch offene Aufrufe enthält (d.h. es erfolgt noch keine Zuweisung eines Funktionsaufrufs zu einer Funktion). (Im Gegensatz zum Compiler sind Interpreter Übersetzungsprogramme die Programme erst bei der Ausführung in Maschinencode umsetzen. Z.B. Basic oder Javascript. Ein Javascriptprogramm wird erst vom Browser des Anwenders nach dem Laden aus dem Internet ausgeführt.)

Der Linker verbindet die noch offenen Funktionsaufrufe mit den zugehörigen Funktionen und ist für die Übersetzung des binären Objectcodes in eine ausführbare Form (.exe-Datei unter Windows und Dos) zuständig.

C braucht noch andere Code-Bibliotheken (run-time library), z.B. für Bildschirmausgabe, Tastatureingabe u.ä. Die run-time library wird meist mit dem Betriebssystem installiert.

Schließlich wird aber meist eine Entwicklungsumgebung. (auch als IDE bezeichnet. IDE = Integrated Development Environment) installiert. Eine IDE kombiniert Editor, Compiler, Linker, Debugger und einige andere Programme unter einer Oberfläche. - Dev C++ Download (43 MByte und portable App) bzw. für Mikrocontrollerprogrammierung die Keil-IDE

Die Installation von IDEs ist aber oft nicht möglich (fehlende Rechte), sehr Resourcenaufwendig (siehe MSVC), komplizierte Toolchain oder es fehlt einfach die Zeit. Daher gibt es mittlerweile ein Vielzahl von Online IDEs, die mittels eines Browsers verwendet werden können. - Ideone oder der hier verwendete mbed Online Compiler.

Ein Debugger ist meist ein Hilfesprogramm der IDE für das Suchen von Fehlern im Programm. Das Programm wird im Debugger gestarten und kann in Einzelschritten ausgeführt werden oder auch an bestimmten Stellen Haltepunkte eingefügt werden. Während der Ausführung können die Variablen überwacht bzw. auch geändert werden oder gesamte Hauptspeicherinhalt angesehen werden (memory dump). - Debugger GDB


All wikipages