Stud.IP Uni Oldenburg
Universität Oldenburg
29.07.2021 11:59:22
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) > Mastermodule
Zuständige Personen
Theel, Oliver (Prüfungsberechtigt)
Lehrenden, Die im Modul (Prüfungsberechtigt)
Teilnahmevoraussetzungen
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
Das Modul vermittelt folgende Inhalte:
  • 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
Modullevel / module level AS (Akzentsetzung / Accentuation)
Modulart / typ of module je nach Studiengang Pflicht oder Wahlpflicht
Lehr-/Lernform / Teaching/Learning method V+Ü
Vorkenntnisse / Previous knowledge 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