Einstieg in das Programmieren mit RISC-V Assembler

Grundlagen der RISC-V Assemblersprache

Einstieg in das Programmieren mit RISC-V Assembler
Einstieg in das Programmieren mit RISC-V Assembler

Einstieg in das Programmieren mit RISC-V Assembler free download

Grundlagen der RISC-V Assemblersprache

In diesem Kurs lernt ihr, die Grundlagen der Programmierung von RISC-V Assembler. Ihr werdet Programme entwickeln, die unter Linux auf einem RISC-V-Board oder in einem RISC-V-Simulator laufen. Der Kurs bietet einen anwendungsnahen Einstieg in das Thema Assembler mit RISC-V.

Es werden die folgenden Inhalte behandelt:

  • Einrichtung einer Toolchain und Entwicklungsumgebung für die Programmierung von Linux-Anwendungen mit RISC-V-Assembler

  • Verstehen und Anwenden der RISC-V User-Level ISA

  • Basisbefehle und Pseudobefehle mit RISC-V Assembler

  • Assembleranweisungen für den GNU Assembler

  • Grundlagen der Programmierung mit Assembler für Kontrollstrukturen wie Schleifen, Funktionen, Bedingungen, Rekursiven

  • Nutzung von Systemaufrufen

  • Beachtung des Application Binary Interface

  • Programmierung von Input- und Output über die Konsole

  • Aufruf von externen Funktionen der Standard-C-Bibliothek, z.B. zum Einlesen von Dateien

  • Nutzung der Fließkomma-Erweiterung

Neben dem üblichen HelloWorld-Programm werden Beispielprogramme umgesetzt, um das Verständnis von Arbeiten mit Registern, Speicher, Kontrollstrukturen, einfachen Datenstrukturen und Systemaufrufen zu vermitteln.

Die Beispielprogramme werden vom Grund auf entwickelt. Diese Programme sind das

  • Einlesen einer Zahl in hexadezimaler Darstellung über die Console als ASCII-String, deren Umwandlung und Ausgabe als Zahl in dezimaler Darstellung über die Console als ASCII-String,

  • Einlesen einer Datei mit Zahlen, der Sortierung der Zahlen und deren Ausgabe auf die Konsole,

  • Clustering von Daten aus einer Datei mit dem K-means-Verfahren.

Bei der Entwicklung der Programme werden die Grundlagen Stück für Stück an den Stellen eingeführt, an denen diese benötigt werden, um praktische und theoretische Inhalte zu verzahnen.