|
| Code: | 299050 |
| Modul: | Grundlagen der Informatik |
| Module title: | Foundations of Computer Science |
| Version: | 2.0 (01/2024) |
| letzte Änderung: |
20.11.2025 |
| Modulverantwortliche/r: |
Prof. Dr.-Ing. Prenzel, Anna A.Prenzel@hszg.de |
|
| Modul läuft im: | WiSe (Wintersemester)
|
| Niveaustufe: | Bachelor/Diplom |
| Dauer des Moduls: | 1 Semester |
| Status: | Pflichtmodul |
| Lehrort: | Zittau |
| Lehrsprache: | Deutsch |
| Workload* in |
SWS ** |
(Teil/)Semester |
| Zeit- std. | ECTS- Pkte |
1 |
2.1 |
2.2 |
3.1 |
3.2 |
4 |
5 |
6 |
7 |
8 |
|
V |
S |
P |
W |
V |
S |
P |
W |
V |
S |
P |
W |
V |
S |
P |
W |
V |
S |
P |
W |
V |
S |
P |
W |
V |
S |
P |
W |
V |
S |
P |
W |
V |
S |
P |
W |
V |
S |
P |
W |
| 150 | 5 | 4.0 |
2 |
0 |
2 |
0 |
|
|
|
|
|
|
|
|
|
| * | Gesamtarbeitsaufwand pro Modul
(1 ECTS-Punkt entspricht einem studentischen Arbeitsaufwand von 30 Zeitstunden) |
| ** | eine Semesterwochenstunde (SWS) entspricht 45 Minuten pro Woche |
| Selbststudienzeit in h |
Angabe gesamt |
|
| 105 |
|
|
Lehr- und Lernformen: | Vorlesung mit Computerunterstützung, Computerübung, Vor- und Nachbereitung zur Festigung des Lehrinhaltes |
| Prüfung(en) |
| Prüfungsvorleistung | Prüfungsvorleistung als Teilnahme/Testat (VT) |
|
| Prüfung | Prüfungsleistung als Klausur (PK) |
120 min |
100.0% |
|
| Lerninhalt: |
Einführung in die Programmiersprache C++
- Phasen der Kompilierung von C++-Programmen
- imperative Programmierung: Funktionen, Bedingungen, Schleifen, Arrays
- Einbindung von Bibliotheken
- Verwendung von Entwicklungswerkzeugen (Kommandozeile, IDEs, KI-gestützte Programmierung)
Grundlagen der Technischen Informatik
- Zahlensysteme und rechnerinterne Zahlenformate
- Rechnerarchitekturen (Von-Neumann-Architektur)
- Maschinenprogramme und Befehlszyklen in der CPU
Grundlagen von Betriebssystemen
- Schichtenmodell
- Prozesse, Multitasking und Scheduling in Betriebssystemen
|
| Lernergebnisse/Kompetenzen: |
| Fachkompetenzen: | Programmierung in C++ und Softwareentwicklung
Nach Absolvieren des Moduls sind die Studierenden in der Lage
- grundlegende Sprachkonstrukte von C++ (Funktionen, Bedingungen, Schleifen, Arrays) zu beschreiben und in eigenen Programmen anzuwenden
- Werkzeuge und Entwicklungsumgebungen (Kommandozeile, IDEs, KI-gestützte Programmierung) gezielt zur Erstellung, zum Testen und zum Debuggen von Programmen einzusetzen
- die Phasen der Kompilierung eines C++-Programms zu erläutern und typische Fehlermeldungen zu analysieren
- Bibliotheken zur Programmerstellung einzubinden und deren Funktionalität in eigenen Programmen anzuwenden
- Konzepte der imperativen Programmierung von C++ auf andere Programmiersprachen zu übertragen
- fach- und anwendungsbezogene Problemstellungen systematisch zu strukturieren, geeignete algorithmische Lösungen zu entwickeln und diese in C++ zu implementieren
Technische Informatik
Nach Absolvieren des Moduls sind die Studierenden in der Lage
- Zahlensysteme und rechnerinterne Zahlenformate darzustellen und Umwandlungen durchzuführen
- den Aufbau der Von-Neumann-Architektur zu beschreiben und elementare Maschinenprogramme sowie den Befehlszyklus einer CPU zu erklären
Betriebssysteme
Nach Absolvieren des Moduls sind die Studierenden in der Lage
- die Grundlagen moderner Betriebssysteme (Schichtenmodell, Prozesse, Multitasking, Scheduling) zu beschreiben und deren Rolle für die Programmausführung zu analysieren
- die Programmausführung aus Sicht unterschiedlicher Ebenen (Hardware, Betriebssystem, Programmebene) zu erläutern und die Zusammenhänge zwischen diesen Ebenen zu erklären
Transfer und Anwendung
Nach Absolvieren des Moduls sind die Studierenden in der Lage
- die erworbenen Kenntnisse aus Programmierung, Rechnerarchitektur und Betriebssystemen auf fachspezifische Problemstellungen anzuwenden und hierfür softwaregestützte Lösungen zu entwickeln
|
| Fachübergreifende Kompetenzen: | Nach Absolvieren des Moduls sind die Studierenden in der Lage
- Problemstellungen sinnvoll zu strukturieren und Lösungswege methodisch zu entwickeln
- kreative Lösungsansätze zu generieren und diese mit fachlichen Argumenten zu begründen
- den eigenen Arbeitsprozess selbständig zu organisieren und dabei geeignete Werkzeuge effektiv zu nutzen
- in Kleingruppen konstruktiv zusammenzuarbeiten, gemeinsame Ergebnisse zu erarbeiten und unterschiedliche Sichtweisen einzubeziehen
- eigene Vorgehensweisen kritisch zu reflektieren und Feedback von anderen konstruktiv zu verarbeiten
- sich flexibel auf neue Anforderungen (z. B. durch veränderte Werkzeuge oder Programmiersprachen) einzustellen und das eigene Vorgehen entsprechend zu adaptieren
|
|
| Notwendige Voraussetzungen für die Teilnahme: | keine |
| Empfohlene Voraussetzungen für die Teilnahme: | keine |
|
| Literatur: | Hoffmann, Dirk W. Grundlagen der technischen Informatik. Carl Hanser Verlag GmbH Co KG, 2023.
Breymann, Ulrich. C++ programmieren: C++ lernen–professionell anwenden–Lösungen nutzen. Carl Hanser Verlag GmbH Co KG, 2023.
|