Hardwarenahe Programmierung
Lehrveranstaltung im Wintersemester 2020/21
Hochschule Bochum, Campus Velbert/Heiligenhaus
Prof. Dr. rer. nat. Peter Gerwinski
Copyright © 2012–2020 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:
- 05.11.2020: Einführung, Einführung in C (bis Schleifen) (Beispiele)
- 12.11.2020: Einführung in C: Seiteneffekte, Funktionen (Beispiele)
- 19.11.2020: Einführung in C: Zeiger, Arrays und Strings (Beispiele)
- 26.11.2020: Einführung in C: Arrays und Strings und Zeichen, Strukturen, Dateien und Fehlerbehandlung (Beispiele)
- 03.12.2020: Parameter des Hauptprogramms, String-Operationen (Beispiele)
- 10.12.2020: Präprozessor, Bibliotheken einbinden und verwenden (Beispiele)
- 17.12.2020: make, Differentialgleichungen (Beispiele)
- 07.01.2021: Rekursion, Aufwandsabschätzungen (Beispiele)
- 14.01.2021: Hardwarenahe Programmierung: Bit-Operationen, I/O-Ports (Beispiele)
- 21.01.2021: Hardwarenahe Programmierung: Interrupts, volatile-Variable, Byte-Reihenfolge – Endianness, Binärdarstellung negativer Zahlen, Speicherausrichtung – Alignment (Beispiele)
- 28.01.2021: Objektorientierte Programmierung (Beispiele)
- 04.02.2021: Objektorientierte Programmierung: virtuelle Methoden (Beispiele)
- 11.02.2021: Objektorientierte Programmierung: virtuelle Methoden (Beispiele)
- alle in 1 Datei
Übungsaufgaben:
- 05.11.2020: Hello-World-Programme, Schaltjahr ermitteln, Maximum berechnen
- 12.11.2020: Schaltjahr ermitteln, Multiplikationstabelle, Fibonacci-Zahlen, fehlerhaftes Programm
- 19.11.2020: Seltsame Programme, Kalender-Berechnung
- 26.11.2020: Strings, Programm analysieren, fehlerhaftes Primzahl-Programm
- 03.12.2020: Arrays mit Zahlen, Datum-Bibliothek
- 10.12.2020: Ausgabe von Hexadezimalzahlen, Einfügen in Strings, Länge von Strings
- 17.12.2020: Kondensator, hüpfender Ball
- 07.01.2021: Fakultät, Länge von Strings (Neuauflage), Hexdumps
- 14.01.2021: Zahlensysteme, Mikrocontroller, Einfügen in Strings (Ergänzung)
- 21.01.2021: Trickprogrammierung, Thermometer-Baustein an I²C-Bus, LED-Blinkmuster
- 28.01.2021: Speicherformate von Zahlen, Personen-Datenbank, objektorientierte Tier-Datenbank
- 04.02.2021: Objektorientierte Tier-Datenbank (Neuauflage), Iterationsfunktionen, dynamisches Bit-Array
- 11.02.2021: Stack-Operationen, einfach und doppelt verkettete Listen, ternärer Baum
Musterlösungen:
- 12.11.2020: Schaltjahr ermitteln, Multiplikationstabelle, Fibonacci-Zahlen, fehlerhaftes Programm
- 19.11.2020: Seltsame Programme, Kalender-Berechnung
- 26.11.2020: Strings, Programm analysieren, fehlerhaftes Primzahl-Programm
- 03.12.2020: Arrays mit Zahlen, Datum-Bibliothek
- 10.12.2020: Ausgabe von Hexadezimalzahlen, Einfügen in Strings, Länge von Strings
- 17.12.2020: Kondensator, hüpfender Ball
- 07.01.2021: Fakultät, Länge von Strings (Neuauflage), Hexdumps
- 14.01.2021: Zahlensysteme, Mikrocontroller
- 21.01.2021: Trickprogrammierung, Thermometer-Baustein an I²C-Bus, LED-Blinkmuster
- 28.01.2021: Speicherformate von Zahlen, Personen-Datenbank, objektorientierte Tier-Datenbank
- 04.02.2021: Objektorientierte Tier-Datenbank (Neuauflage), Iterationsfunktionen, dynamisches Bit-Array
- 11.02.2021: Stack-Operationen, einfach und doppelt verkettete Listen, ternärer Baum
Tafelbilder:
(keine)
Praktikumsunterlagen:
- Versuch 1: RSA-Verschlüsselung
- Versuch 2: Weltraum-Simulation
- Versuch 3: Druckknopfampel
- Versuch 4: Objektorientiertes Grafik-Programm
Alte Klausuren:
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 2018ws – vollständige Lehrmaterialien vom Wintersemester 2018/19
Low-Level Programming
Course in winter semester 2020-21
Bochum University of Applied Sciences, Campus Velbert/Heiligenhaus
Prof. Dr. rer. nat. Peter Gerwinski
Copyright © 2012–2020 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.