1. Grundbegriffe

1.1. Informatik

Der Begriff Informatik ist von den Begriffen Information und Mathematik (und/oder Elektrotechnik) abgeleitet. Obwohl dieser Begriff bereits seit 1957 in Veröffentlichungen verwendet wurde, setzte er sich erst 1968 im deutschen Sprachraum durch.

Die Informatik unterteilt sich im wesentlichen in drei Unterbereiche: Theoretische Informatik, Praktische Informatik und Technische Informatik. Darauf aufbauend gibt es die Bereiche Angewandte Informatik (z.B. Wirtschaftsinformatik), Didaktik der Informatik, Künstliche Intelligenz sowie Informatik und Gesellschaft.

In der Theoretischen Informatik werden die Grundlagen der Informatik behandelt. So werden hier die Grundlagen der verschiedenen Algorithmen entwickelt und deren Leistungen untersucht sowie die Grenzen der Algorithmen und auch die Grenzen der Lösbarkeit von Problemen erforscht. Dazu gehören die Automatentheorie, Berechnungstheorie, Graphentheorie, Komplexitätstheorie, Kryptologie usw.

In der Praktischen Informatik werden Computerprogramme entwickelt, um konkrete Problemen der Informatik lösen zu können. Dabei werden Datenstrukturen und Algorithmen entwickelt, um Informationen bearbeiten und speichern zu können. Aber auch die Entwicklung von Betriebssystemen, Compilern und Programmierwerkzeugen gehören dazu.

In der Technischen Informatik werden die hardwareseitigen Grundlagen der Informatik behandelt. Dazu gehören u.a. die Mikroprozessortechnik und die Rechnerarchitekturen.

1.2. Computerprogramm

Ein Computerprogramm (meist nur kurz Programm genannt) ist ganz allgemein eine vollständige Arbeitsanweisung an eine Datenverarbeitungsanlage, um mit ihrer Hilfe eine bestimmte Aufgabe lösen zu können. Das Programm setzt sich aus einzelnen Befehlen zusammen, die die Verarbeitungsoperationen der Datenverarbeitungsanlage bei der Ausführung des Programms auslösen. Das Problem bei der Erstellung des Programms besteht darin, die richtigen Befehle auszuwählen und diese in eine der Aufgabenstellung entsprechend richtige Reihenfolge zu bringen.

Dabei muss unterschieden werden, ob mit einem Programm eine ausführbare Datei oder eine Quelltextdatei gemeint ist. Bei einer ausführbaren Datei liegt das Programm im Maschinencode vor. Der Maschinencode enthält Befehle, die der Prozessor eines Rechners direkt versteht und verarbeiten kann. Quelltextdateien (auch Quellcode- oder Programmcodedateien genannt) sind dagegen Textdateien, die das Programm in einer Programmiersprache beinhalten. Diese Dateien können vom Prozessor nicht verstanden und folglich auch nicht verarbeitet werden.

1.3. Daten

Daten sind Informationen, die durch Zeichen oder kontinuierliche Funktionen aufgrund bekannter oder unterstellter Abmachungen dargestellt werden. Die Zeichen werden dabei als digitale Daten und die kontinuierlichen Funktionen als analoge Daten bezeichnet (nach DIN ISO/IEC 2382).

Dabei ist der Begriff Daten die Mehrzahl von Datum - nicht im Sinne eines Kalenderdatums, sondern im Sinne von Datenelement.

Nach dieser Definition bestehen Daten aus einer Größe (Zahl) und einer Einheit; beispielsweise ist eine Temperatur (bestehend aus Zahl und Einheit) ein Datum. Die Zahl 123 für sich alleine dagegen ist kein Datum.

1.4. Elektronische Datenverarbeitung

Die elektronische Datenverarbeitung (kurz EDV) ist die Verarbeitung von Daten durch elektronische Systeme, z.B. durch Rechner. Dabei bezieht sich die Verarbeitung der Daten auf die Eingabe, Speicherung, Übertragung, Transformation und Ausgabe von Daten. Häufig wird dies auch das EVA-Prinzip (Eingabe, Verarbeitung, Ausgabe) genannt.

1.5. Programmiersprache

Eine Programmiersprache ist ein Kommunikationsmittel zwischen Menschen und Rechner. Jede Programmiersprache ist eine formale Sprache und hat eine streng definierte Grammatik, ihre Syntax.

Der Maschinencode (auch Maschinensprache genannt) kann vom Prozessor direkt verstanden werden, aber von Menschen kann er im Allgemeinen nicht gelesen werden. Dazu werden Programme in einer Programmiersprache geschrieben, die von Menschen gelesen werden können. Damit der Prozessor diese Programme verstehen kann, muss der Quelltext erst von einem Compiler in den Maschinencode übersetzt werden. Dieser Vorgang wird Compilieren genannt. Das Ergebnis wird in einer ausführbaren Datei gespeichert.

Alternativ kann auch ein Interpreter verwendet werden: Hierbei wird zur Programmlaufzeit Befehl für Befehl einzelnd aus der Quelltextdatei in Maschinencode übersetzt und dann auch gleich ausgeführt. Damit sind Programme, die mit einem Interpreter ausgeführt werden, langsamer als Programme, die vorher mit einem Compiler übersetzt wurden.

Eine dritte Variante kommt z.B. bei Java zum Einsatz: Hier werden die Quelltextdateien in einen Zwischencode (Bytecode) übersetzt. Dieser Zwischencode wird zur Programmlaufzeit von einer virtuellen Java-Maschine (im Prinzip ein Interpreter) übersetzt und ausgeführt.

Es wird zwischen hardwarenahen und höheren Programmiersprachen unterschieden (genau genommen gibt es noch eine Vielzahl weiterer Unterscheidungen wie Skriptsprachen, Datenbanksprachen, CNC zur Steuerung von Werkzeugmaschinen, usw.). Während bei den hardwarenahen Programmiersprachen wie z.B. Assembler der Vorteil darin liegt, dass die Hardware direkt angesprochen werden kann, sind höhere Programmiersprachen wie z.B. Delphi dafür konzipiert, komplexere und strukturiertere Programme zu erstellen. Die Programmiersprache C wird beiden Bereichen zugeordnet.

Bei der Erstellung eines Programmes sollte immer darauf geachtet werden, dass ein Programm leicht zu lesen (d.h. leicht zu warten und zu erweitern) und auch leicht zu handhaben (d.h. bedienerfreundlich) ist.



Inhaltsverzeichnis