General information
| Course name | Seminar: 2.01.800-D Proseminar "ARM−Assembler mit dem Raspberry Pi" |
| Subtitle | inf800 |
| Course number | 2.01.800-D |
| Semester | SoSe2022 |
| Current number of participants | 2 |
| erwartete Teilnehmendenzahl | 8 |
| Home institute | Department of Computing Science |
| Courses type | Seminar in category Teaching |
| First date | Fri., 22.04.22, 14:00 - 16:00 |
| Type/Form | |
| Pre-requisites |
Kenntnisse der Lehrinhalte des Moduls "Maschinennahe Programmierung" (C-Programmiersprache, NASM-Assemberprogrammierung, etc.) |
| Learning organisation | Vorbesprechung, mehrere individuelle Termine mit Betreuer ueber das Semester verteilt, zwei Blocktermine; einer ca. in der Mitte der Vorlesungszeit, der zweite in der ersten Woche der vorlesungsfreien Zeit jeweils mit eigenem Vortrag, Demo und Diskussion |
| Performance record | wird in der Vorbesprechung dargestellt |
| Lehrsprache | deutsch |
| Info-Link | https://uol.de/svs/lehre/lehrangebot/aktuelle-veranstaltungen/proseminar-arm-assembler-mit-dem-raspberry-pi-se |
| Miscellanea |
Ziel des Proseminars ist die zielgerichtete, systematische Programmierung einer RISC-Architektur. Dazu wird beispiehaft die 32-Bit ARMv6-Archtektur des ARM11-Prozessors, der u.a. in Rapsberry Pi Zeros verwendet wird, genutzt. ARM steht dabei fuer "Advanced RISC Machines". RISC-Architekturen ("Reduced Instruction Set Computers", wie Rapsberry Pi und Smart-Phones) stehen CISC-Architekturen ("Complex Instruction Set Computer", wie Rechnern mit Intel-x64-Prozessoren) gegenueber. Beide Architekturen haben unterschiedliche Designphilosphien, die sich in Art und Umfang der zur Verfuegung stehenden Maschinenbefehle niederschlagen. Konsequenterweise unterscheidet sich ihre Programmierung auf Maschinenbefehls- bzw. Assemblerebene sehr stark. Nachdem im Modul "Maschinennahe Programmierung" die systematische Assemberprogrammierung einer Intel-x64-Prozessorarchitekur vermittelt wird, hat das vorliegende Proseminar das Ziel, die in Maschinennaher Programmierung identifizierten Konzepte, Konventionen und Uebersetzungsschablonen auf die ARMv6-Architektur zu uebertragen und dabei die architekturspezifischen Unterschiede zu beruecksichtigen. |