inf020 - Maschinennahe Programmierung (Vollständige Modulbeschreibung)

inf020 - Maschinennahe Programmierung (Vollständige Modulbeschreibung)

Originalfassung Englisch PDF Download
Modulbezeichnung Maschinennahe Programmierung
Modulkürzel inf020
Kreditpunkte 6.0 KP
Workload 180 h
Einrichtungsverzeichnis Department für Informatik
Verwendbarkeit des Moduls
  • Fach-Bachelor Informatik (Bachelor) > Akzentsetzungsbereich - Wahlbereich Informatik
  • Master of Education (Gymnasium) Informatik (Master of Education) > Wahlpflichtmodule (Praktische Informatik)
Zuständige Personen
  • Theel, Oliver (Modulverantwortung)
  • Lehrenden, Die im Modul (Prüfungsberechtigt)
Teilnahmevoraussetzungen
Studieninhalte des ersten Studienjahres des Fach-Bachelors Informatik oder Wirtschaftsinformatik
Kompetenzziele
Fachkompetenzen
Die Studierenden:
  • erkennen spezielle Konzepte und Methoden der hardwarenahen Programmierung von eng gekoppelten Rechensystemen in C und deren systematische Übersetzung in den NASM-Assembler
  • implementieren eigenständig und systematisch Programme in C und übersetzen diese mit einer Assemblersprache für eine gegebene Rechnerarchitektur (intel)
  • implementieren hardwarenahe Software mit geeigneten Programmiertechniken, Übersetzungsschemata und -methoden
  • erkennen Aspekte technischer und praktischer Informatik sowie zwischen Hochsprachenprogrammierung und maschinennaher Programmierung
Methodenkompetenzen
Die Studierenden:
  • erkennen Aspekte technischer und praktischer Informatik
  • erkennen Zusammenhänge zwischen Hochsprachenprogrammierung und maschinennaher Programmierung
  • übertragen Programme der Programmiersprache C in NASM-Assemblerprogramme
Sozialkompetenzen
Die Studierenden:
  • lösen Problemstellung teilweise in Kleingruppen 
  • präsentieren Lösungsvorschläge vor der Übungsgruppe
  • diskutieren ihre unterschiedlichen Lösungsvorschläge innerhalb der Übungsgruppe
Selbstkompetenzen
Die Studierenden:
  • nehmen Kritik an 
  • reflektieren ihre Lösungsvorschläge unter Berücksichtigung der vermittelten Methoden
Modulinhalte
  • Einsatzgebiete maschinennaher Programmierung
  • Konzepte der Programmiersprache C 
  • Programmieren in C 
  • Aufbau und Struktur von enggekoppelten Rechensystemen
  • Prozessorarchitekturen am Beispiel Assembler
  • Systematische Übersetzung von C nach Assembler
Das Modul besitzt eine Brückenfunktion zwischen Aspekten technischer und praktischer Informatik sowie zwischen Hochsprachenprogrammierung und maschinennaher Programmierung. Die Kenntnisse und Fertigkeiten sind für maschinennahe Systemprogrammierung, z.B. bei der Realisierung von Betriebssystemen und Übersetzern relevant.
Literaturempfehlungen
  • D. Patterson und J. Hennessy (2007): Computer Organization and Design, 3rd Edition, Elsevier Inc.
  • B. Kernighan und D. Ritchie (1988): The C Programming Language, Second Edition, Prentice Hall, Inc.
  • Jeff Duntemann (2009): Assembly Language Step by Step, 3rd edition, Wiley Publishing
Links
Unterrichtssprache Deutsch
Dauer in Semestern 1 Semester
Angebotsrhythmus Modul jährlich
Aufnahmekapazität Modul unbegrenzt
Hinweise
Verknüpft mit den Modulen:
  • Betriebssysteme I und II (als mögliche Anschlussveranstaltung)
  • Verteilte Betriebssysteme (als mögliche Spezialisierung)
  • Betriebssysteme-Praktikum
Lehr-/Lernform V+Ü
Vorkenntnisse Studieninhalte des ersten Studienjahres des Fach-Bachelors Informatik oder Wirtschaftsinformatik
Lehrveranstaltungsform Kommentar SWS Angebotsrhythmus Workload Präsenz
Vorlesung 2 WiSe 28
Übung 2 WiSe 28
Präsenzzeit Modul insgesamt 56 h
Prüfung Prüfungszeiten Prüfungsform
Gesamtmodul
Am Ende der Vorlesungszeit
Klausur oder mündliche Prüfung