Lernergebnisse
Absolventen des Moduls verfügen über das Verständnis des Systems Rechner (Hardware, Betriebssystem), sind des praktischen Umgangs mit der UNIX-Shell befähigt und können eine Programmiersprache (wahlweise Java oder C) anwenden.
Am Ende des Kurses sind die Studierenden in der Lage:
1) mit dem Rechner und seinen "Werkzeugen" umzugehen
2) einfache kurze Programme zu schreiben
3) die grundlegenden Sprachkonzepte korrekt zu verwenden.
Lehrinhalte
1) Darstellung von Information im Rechner (Bits und Bytes, binäres Zahlensystem, Darstellung von Zeichen und Zahlen im Rechner)
2) Logische Schaltungen (logische Funktionen, logische Gatter, Flip-Flop, Addierwerke und ALU, Multiplexer)
3) Rechneraufbau (Teile des Rechners, CPU, Hauptspeicher, Assembler, periphere Geräte)
4) UNIX-Betriebssystem (Aufbau, Dateisystem, Prozesssteuerung, UNIX-Shells, einige UNIX-Tools und Programme (Editor, Compiler, Debugger, ...))
Und dann wahlweise:
C
(Überblick und strukturiertes Programmieren, skalare Datentypen, Operatoren und Ausdrücke, Kontrollfluss, Präprozessor, Arrays und Pointer, Speicherklassen, Strukturen, Funktionen, I/O, Visualisierung von Ergebnissen)
Oder
Java
(Überblick und strukturiertes Programmieren, elementare Datentypen, Kontrollfluss, objektorientierte Programmierung, Klassen, Konstruktoren, Variablen, Methoden, Verkappung, Interface, Vererbung, Visualisierung von Ergebnissen)
Beschreibung der Lehr- und Lernformen
Vorlesung: Frontalunterricht vor allen Teilnehmern zur Vermittlung von Hintergrundwissen und der wesentlichen Konzepte der Programmiersprachen.
Tutorien: in Gruppen zu 20-30 Teilnehmern Vermittlung der praxisrelevanten Details und gemeinsame Lösung von kleinen Übungsaufgaben, Vorbereitung der Hausaufgaben.