Hardwarenahe Programmierung
Lehrveranstaltung im Wintersemester 2022/23
Hochschule Bochum, Campus Velbert/Heiligenhaus
Prof. Dr. rer. nat. Peter Gerwinski
Copyright © 2012–2022 Peter Gerwinski
Diese Lehrmaterialien sind freie Software.
Sie dürfen diese gemäß den jeweils angegebenen Lizenzen
(CC-BY-SA 3.0,
GNU GPL 3+,
modified BSD License)
studieren, kopieren, modifizieren und/oder weitergeben.
Für Details siehe common/README.
Vortragsfolien und Beispiele:
- 26.09.2022: Einführung, Einführung in C (bis Seiteneffekte) (Beispiele)
- 10.10.2022: Funktionen, Zeiger, Arrays und Strings (Beispiele)
- 17.10.2022: Strukturen, Dateien und Fehlerbehandlung, Parameter des Hauptprogramms, String-Operationen (Beispiele)
- 24.10.2022: Bibliotheken (Beispiele)
- 31.10.2022: Callback-Funktionen, make, Bit-Operationen, I/O-Ports (Beispiele)
- 07.11.2022: Interrupts, volatile-Variable, Endianness (Beispiele)
- 14.11.2022: Binärdarstellung negativer Zahlen, Alignment, Differentialgleichungen, Rekursion (Beispiele)
- 21.11.2022: Aufwandsabschätzungen, Objektorientierte Programmierung (Beispiele)
- 28.11.2022: Objektorientierte Programmierung (Beispiele)
- 05.12.2022: Objektorientierte Programmierung, Datenstrukturen (Beispiele)
- 12.12.2022: Objektorientierte Programmierung, Datenstrukturen (Beispiele)
- alle in 1 Datei
Übungsaufgaben:
- 26.09.2022: Hello-World-Programme, Schaltjahr ermitteln, Maximum berechnen
- 10.10.2022: Schaltjahr ermitteln, Multiplikationstabelle, Fibonacci-Zahlen, fehlerhaftes Programm
- 17.10.2022: Seltsame Programme, Kalender-Berechnung, Strings, Programm analysieren
- 24.10.2022: Arrays mit Zahlen, Datum-Bibliothek, fehlerhaftes Primzahl-Programm
- 31.10.2022: Zahlensysteme, Mikrocontroller, Einfügen in Strings
- 07.11.2022: Ausgabe von Hexadezimalzahlen, Länge von Strings, LED-Blinkmuster
- 14.11.2022: Trickprogrammierung, Thermometer-Baustein an I²C-Bus, Speicherformate von Zahlen
- 21.11.2022: Kondensator, Personen-Datenbank, Fakultät
- 28.11.2022: Einfügen in Strings (Ergänzung), dynamisches Bit-Array, objektorientierte Tier-Datenbank
- 05.12.2022: Objektorientierte Tier-Datenbank (Ergänzung), Iterationsfunktionen, Stack-Operationen
- 12.12.2022: Länge von Strings (Neuauflage), Text-Grafik-Bibliothek, PBM-Grafik
Musterlösungen:
- 10.10.2022: Schaltjahr ermitteln, Multiplikationstabelle, Fibonacci-Zahlen, fehlerhaftes Programm
- 17.10.2022: Seltsame Programme, Kalender-Berechnung, Strings, Programm analysieren
- 24.10.2022: Arrays mit Zahlen, Datum-Bibliothek, fehlerhaftes Primzahl-Programm
- 31.10.2022: Zahlensysteme, Mikrocontroller, Einfügen in Strings
- 07.11.2022: Ausgabe von Hexadezimalzahlen, Länge von Strings, LED-Blinkmuster
- 14.11.2022: Trickprogrammierung, Thermometer-Baustein an I²C-Bus, Speicherformate von Zahlen
- 21.11.2022: Kondensator, Personen-Datenbank, Fakultät
- 28.11.2022: Einfügen in Strings (Ergänzung), dynamisches Bit-Array, objektorientierte Tier-Datenbank
- 05.12.2022: Objektorientierte Tier-Datenbank (Ergänzung), Iterationsfunktionen, Stack-Operationen
- 12.12.2022: Länge von Strings (Neuauflage), Text-Grafik-Bibliothek, PBM-Grafik
Praktikumsunterlagen:
- Versuch 1: RSA-Verschlüsselung
- Versuch 2: Druckknopfampel
- Versuch 3: Weltraum-Simulation
- Versuch 4: Objektorientiertes Grafik-Programm
Alte Klausuren:
- Wintersemester 2015/16 (Beispiele)
- Wintersemester 2016/17 (Beispiele)
- Wintersemester 2017/18 (Beispiele)
Skript:
Original-Materialien einschließlich Beispiel-Programme und LaTeX-Quelltexte:
- common – gemeinsame Dateien für Skript und Vortragsfolien
- script – Skript zur Lehrveranstaltung
- 202????? – Vortragsfolien und Beispiele
- branch 2021ws – vollständige Lehrmaterialien vom Wintersemester 2021/22
Low-Level Programming
Course in winter semester 2022-23
Bochum University of Applied Sciences, Campus Velbert/Heiligenhaus
Prof. Dr. rer. nat. Peter Gerwinski
Copyright © 2012–2022 Peter Gerwinski
These teaching materials are Free Software.
You may study, copy, modify, and/or distribute them
according to their respective licences
(CC-BY-SA 3.0,
GNU GPL 3+,
modified BSD License).
See the file common/README for details.