Impressum | Kontakt
 Startseite | Kurse Projekte | Haskell | Fortbildungen | Linux | Suche

Hardware

Bestandteile eines typischen Computers:

  • Motherboard
  • CPU (Central Processing Unit)
  • Festplatte (Harddisk)
  • Diskettenlaufwerk (Floppy)
  • Speicher (RAM - Read Access memory)
  • Netzteil
  • CD-Rom / DVD - Laufwerk
  • Grafikkarte
  • Soundkarte
  • Netzwerkkarte

Inzwischen sind viele Optionen direkt auf dem Motherboard integriert (Netzwerk, Sound).

Software

  1. Maschinensprache

    Die Hardware "versteht” nur binären Code:
    01101011011000101010001000100010
    00110011110101000101001110100101
    Zur besseren Lesbarkeit gruppiert man diesen Code in 4-er, 8-er oder 16-Päckchen:
    01101011 01100010 10100010 00100010
    00110011 11010100 01010011 10100101
    Die Mathematik liefert eine einfache Übersetzung des Binärcodes in "unser” dezimales Zahlensystem:
    107 98 162 34
    51 212 83 165
  2. Assembler

    Diese Zahlenkollonnen sind für den Menschen ungeeignet. Die erste abstrakte Ebene bilden Pseudobefehle wie etwa
    MOVE A0,#123
    CLR A1
    Diese werden durch ein Programm (Assembler) in Binärcode übersetzt, welchen die CPU versteht.
    Diese Befehle hängen stark von der jeweiligen Hardware ab und sind nur für Spezialfälle (Tuning etc.) von Interesse.

  3. Hochsprachen

    Seit den 70-er Jahren kamen spezielle Sprachen auf den Markt, die der Mensch gut beherrschen kann. Eine davon, PASCAL, wird hier verwendet werden. Andere Sprachen sind C,  MODULA, JAVA, BASIC, ...
    PROGRAM eins;
    BEGIN
       WRITELN(’HALLO WORLD’);
    END.
  4. Skriptsprachen

    Für spezielle Aufgaben wurden zahlreiche Hilfssprachen geschrieben, die eine gewisse Routinearbeit stark vereinfachen können. Dazu gehören alle Macrosprachen, die in Programmen integriert sind sowie bekannte Skriptsprachen wie PERL, PYTHON, JAVASCRIPT, ...

Programmieren

Der Programmierer schreibt gewöhnlich sein Programm in einer Hochsprache (Quelltext). Letztlich handelt es sich dabei um einen Text, der mit einem beliebigen Editor geschrieben werden kann.

Der PC kann diesen Text aber in keiner Weise interpretieren. Deshalb muss das Programm (der Quelltext) zuerst in eine dem Rechner bekannte Sprache übersetzt werden. Diesen Vorgang nennt man "kompilieren".

Wenn bei diesem Vorgang kein Fehler auftrat, liegt anschließend eine binäre Datei vor, mit der der Rechner etwas anzufangen weiß. Der Mensch kann dieses Format nicht mehr lesen. Diese Programmdatei kann nun gestartet werden.

Von großem Nachteil ist dabei, dass das Programm von der Rechnerart und vom Betriebssystem abhängig ist. Eine auf einem Windows-PC übersetzte Software wird auf keinem Apple oder Linux-System sofort laufen. Manchmal helfen Emulatoren weiter, oft hilft aber nur ein erneutes compilieren auf dem Zielrechner.

Besserung ist in Sicht

Seit einigen Jahren gibt es Programmiersprachen, deren Programme auf sehr vielen unterschiedlichen Rechnern läuft. Die bekannteste Sprache ist hier sicherlich JAVA. Schreibt ein Entwickler seine Software in JAVA, so kann er davon ausgehen, dass die compilierte Version auf Windows-, Apple-, Linux und Unix-Rechnern unverändert lauffähig ist. Voraussetzung ist nur, dass auf dem Zielrechner Java installiert ist.

Wir werden im Unterricht mit JAVA programmieren, auch wenn klar sein muss, dass im Rahmen eines Anfängerunterrichts keine umfassende Behandlung von JAVA möglich ist. Die Prinzipien moderner Softwareentwicklung werden aber sehr deutlich werden.