Bewertung:

Das Buch konzentriert sich ausschließlich auf die Gleitkomma- und SIMD-Operationen der ARM-Architektur, insbesondere auf die NEON FPU. Obwohl es technisch gut geschrieben und eine großartige Ressource für fortgeschrittene Benutzer ist, deckt es viele andere wichtige Aspekte der ARM-Assemblerprogrammierung nicht ab, was zu einer gewissen Enttäuschung bei den Lesern führt, die einen breiteren Umfang erwartet hatten.
Vorteile:⬤ Gut geschriebenes und technisch detailliertes Handbuch zur ARM V8-Assemblerprogrammierung
⬤ geeignet für Leser mit einem früheren Verständnis von Assembler-Konzepten
⬤ positives Feedback von Benutzern, die es wertvoll genug fanden, um nach verwandten Büchern zu suchen.
⬤ Enger Fokus auf die Fließkomma- und SIMD-Einheit
⬤ vernachlässigt andere wichtige Funktionen von ARM-Assembler wie Cache-Verwaltung, MMU und verschiedene Modi
⬤ ist möglicherweise nicht für Anfänger geeignet, die eine umfassende Einführung suchen.
(basierend auf 3 Leserbewertungen)
Modern Arm Assembly Language Programming: Covers Armv8-A 32-Bit, 64-Bit, and Simd
Erlernen Sie die Grundlagen der Armv8-A 32-Bit- und 64-Bit-Assemblerprogrammierung. Dieses Buch legt den Schwerpunkt auf Armv8-A Assemblersprachthemen, die für die moderne Softwareentwicklung relevant sind. Es soll Ihnen helfen, die Armv8-A Assembler-Programmierung und die Rechenressourcen der SIMD-Plattform von Arm schnell zu verstehen. Es enthält außerdem eine Fülle von Quellcode, der so strukturiert ist, dass er das Erlernen und Verstehen der wesentlichen Armv8-A Assemblersprachkonstrukte und SIMD-Programmierkonzepte beschleunigt. Nach der Lektüre dieses Buches werden Sie in der Lage sein, leistungsoptimierte Funktionen und Algorithmen mit Armv8-A 32-Bit- und 64-Bit-Assemblersprache zu programmieren.
Modern Arm Assembly Language Programming legt den Schwerpunkt auf die Codierung von Armv8-A 32-Bit- und 64-Bit-Assemblerfunktionen, die von C++ aus aufgerufen werden können. Mehrere Kapitel sind auch der Armv8-A SIMD Assemblersprachprogrammierung gewidmet. In diesen Kapiteln wird erörtert, wie man Funktionen codiert, die in rechenintensiven Anwendungen wie maschinellem Lernen, Bildverarbeitung, Audio- und Videocodierung und Computergrafik verwendet werden.
Die Quellcode-Beispiele wurden mit der GNU Toolchain (g++, gas und make) entwickelt und auf einem Raspberry Pi 4 Model B mit Raspbian (32-bit) und Ubuntu Server (64-bit) getestet. Es ist wichtig anzumerken, dass dies ein Buch über Armv8-A Assembler-Programmierung und nicht über den Raspberry Pi ist.
Was Sie lernen werden.
⬤ Wesentliche Details über die Armv8-A 32-Bit- und 64-Bit-Architekturen, einschließlich Datentypen, Allzweckregister, Gleitkomma- und SIMD-Register sowie Adressierungsmodi.
Verwenden Sie die Armv8-A 32-Bit- und 64-Bit-Befehlssätze, um leistungssteigernde Funktionen zu erstellen, die von C++ aus aufgerufen werden können.
⬤ Armv8-A Assemblersprache einsetzen, um gängige Datentypen und Programmierkonstrukte wie Integer, Arrays, Matrizen und benutzerdefinierte Strukturen effizient zu manipulieren.
⬤ Erstellen von Assemblerfunktionen, die skalare Gleitkommaarithmetik unter Verwendung der Armv8-A 32-Bit und 64-Bit Befehlssätze durchführen.
⬤ Nutzen Sie die Armv8-A SIMD-Befehlssätze, um die Leistung rechenintensiver Algorithmen in Anwendungen wie maschinelles Lernen, Bildverarbeitung, Computergrafik, Mathematik und Statistik erheblich zu beschleunigen.
⬤ Führende Kodierungsstrategien und -techniken anwenden, um die Armv8-A 32-Bit- und 64-Bit-Befehlssätze optimal zu nutzen und die bestmögliche Leistung zu erzielen.
Für wen ist dieses Buch gedacht?
Softwareentwickler, die Programme für Armv8-A-Plattformen erstellen und lernen wollen, wie man leistungssteigernde Algorithmen und Funktionen unter Verwendung der Armv8-A 32-Bit- und 64-Bit-Befehlssätze codiert. Die Leser sollten über frühere Erfahrungen in der Hochsprachenprogrammierung und ein grundlegendes Verständnis von C++ verfügen.