Hardwarenahe Programmierung
Lehrveranstaltung im Wintersemester 2018/19
Hochschule Bochum, Campus Velbert/Heiligenhaus
Prof. Dr. rer. nat. Peter Gerwinski
Copyright © 2012–2018 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:
- 08.10.2018: Einführung, Einführung in C (bis Schleifen) (Beispiele)
- 15.10.2018: Seiteneffekte, Funktionen (Beispiele)
- 22.10.2018: Zeiger, Arrays und Strings, Strukturen (Beispiele)
- 29.10.2018: Dateien und Fehlerbehandlung, Parameter des Hauptprogramms (Beispiele)
- 05.11.2018: String-Operationen, Bibliotheken (Beispiele)
- 12.11.2018: Einführung: Bibliotheken, Differentialgleichungen (Beispiele)
- 19.11.2018: Präprozessor-Makros, Bibliothek verwenden (Beispiel: GTK+), Differentialgleichungen (Beispiele)
- 26.11.2018: make; Hardwarenahe Programmierung: Zahlensysteme, Bit-Operationen (Beispiele)
- 03.12.2018: Bit-Operationen, Programmierung von Mikrocontrollern, I/O-Ports, Interrupts (Beispiele)
- 10.12.2018: volatile-Variable, Byte-Reihenfolge - Endianness, Binärdarstellung negativer Zahlen, Speicherausrichtung - Alignment (Beispiele)
- 17.12.2018: Rekursion, Aufwandsabschätzungen (Beispiele)
- 07.01.2019: Aufwandsabschätzungen, dynamische Speicherverwaltung (Beispiele)
- 14.01.2019: Objektorientierte Programmierung (Beispiele)
- 21.01.2019: Datenstrukturen (Beispiele)
- alle in 1 Datei
Übungsaufgaben:
- 08.10.2018: Hello-World-Programme, Multiplikationstabelle, Schaltjahr ermitteln
- 15.10.2018: Fibonacci-Zahlen, fehlerhaftes Programm, "Hello, world!"
- 22.10.2018: ROT13-Verschlüsselung, Programm analysieren, Kalender-Berechnung
- 29.10.2018: Strings, Primzahlen, Datum-Bibliothek
- 05.11.2018: Ausgabe von Hexadezimalzahlen, Einfügen in Strings, Länge von Strings
- 12.11.2018: Text-Grafik-Bibliothek, Datum-Bibliothek, Kondensator
- 19.11.2018: Arrays mit Zahlen, hüpfender Ball
- 26.11.2018: Zahlensysteme, Mikrocontroller
- 03.12.2018: XBM-Grafik, LED-Blinkmuster
- 10.12.2018: Trickprogrammierung, Thermometer-Baustein an I²C-Bus
- 17.12.2018: Fakultät, Lauflicht, Länge von Strings (Neuauflage)
- 07.01.2019: Speicherformate von Zahlen, Zeigerarithmetik
- 14.01.2019: Iteratorfunktionen, Objektorientierte Tier-Datenbank
- 21.01.2019: Stack-Operationen, einfach und doppelt verkettete Listen, ternärer Baum
Musterlösungen:
- 08.10.2018:
- 15.10.2018: Fibonacci-Zahlen, fehlerhaftes Programm, "Hello, world!"
- 22.10.2018: ROT13-Verschlüsselung, Programm analysieren, Kalender-Berechnung
- 29.10.2018: Strings, Primzahlen, Datum-Bibliothek
- 05.11.2018: Ausgabe von Hexadezimalzahlen, Einfügen in Strings, Länge von Strings
- 12.11.2018: Text-Grafik-Bibliothek, Datum-Bibliothek, Kondensator
- 19.11.2018: Arrays mit Zahlen, hüpfender Ball
- 26.11.2018: Zahlensysteme, Mikrocontroller
- 03.12.2018: XBM-Grafik, LED-Blinkmuster
- 10.12.2018: Trickprogrammierung, Thermometer-Baustein an I²C-Bus
- 17.12.2018: Fakultät, Lauflicht, Länge von Strings (Neuauflage)
- 07.01.2019: Speicherformate von Zahlen, Zeigerarithmetik
- 14.01.2019: Iteratorfunktionen, Objektorientierte Tier-Datenbank
- 21.01.2019: Stack-Operationen, einfach und doppelt verkettete Listen, ternärer Baum
Tafelbilder:
- 12.11.2018: Differentialgleichung für gleichförmige und gleichmäßig beschleunigte Bewegung
- 26.11.2018: Prakikumstermine, Bit-Operationen
- 03.12.2018: Pull-Down- und Pull-Up-Widerstand
- 10.12.2018: Grafik abspeichern; Zweierkomplement auf 4-Bit-Rechner
- 07.01.2019: Quicksort
Praktikumsunterlagen:
- Versuch 1, 10., 17. und 24.10.2018: RSA-Verschlüsselung
- Versuch 2, 14. und 21.11.2018: Weltraum-Simulation
- Versuch 3, 5.12.2017 und 9.1.2019: Druckknopfampel
- Versuch 4, 16. und 23.1.2019: 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
- 201????? – Vortragsfolien und Beispiele
- branch 2017ws – vollständige Lehrmaterialien vom Wintersemester 2017/18
Low-Level Programming
Course in winter semester 2018–19
Bochum University of Applied Sciences, Campus Velbert/Heiligenhaus
Prof. Dr. rer. nat. Peter Gerwinski
Copyright © 2012–2018 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.