Ocena:
Książka koncentruje się wyłącznie na operacjach zmiennoprzecinkowych i SIMD architektury ARM, w szczególności na NEON FPU. Choć jest dobrze napisana pod względem technicznym i stanowi świetne źródło informacji dla zaawansowanych użytkowników, nie obejmuje wielu innych kluczowych aspektów programowania w języku asemblera ARM, co prowadzi do pewnego rozczarowania wśród czytelników oczekujących szerszego zakresu.
Zalety:⬤ Dobrze napisany i technicznie szczegółowy podręcznik programowania w asemblerze ARM V8
⬤ odpowiedni dla czytelników z wcześniejszym zrozumieniem koncepcji asemblera
⬤ pozytywne opinie użytkowników, którzy uznali go za wystarczająco wartościowy, aby szukać powiązanych książek.
⬤ Wąskie skupienie się tylko na jednostce zmiennoprzecinkowej i SIMD
⬤ pomija inne ważne funkcje asemblera ARM, takie jak zarządzanie pamięcią podręczną, MMU i różne tryby
⬤ może nie być odpowiedni dla początkujących szukających kompleksowego wprowadzenia.
(na podstawie 3 opinii czytelników)
Modern Arm Assembly Language Programming: Covers Armv8-A 32-Bit, 64-Bit, and Simd
Poznaj podstawy programowania w 32-bitowym i 64-bitowym języku asemblera Armv8-A. Ta książka kładzie nacisk na tematy języka asemblera Armv8-A, które są istotne dla rozwoju nowoczesnego oprogramowania. Została zaprojektowana, aby pomóc ci szybko zrozumieć programowanie w języku asemblera Armv8-A i zasoby obliczeniowe platformy SIMD firmy Arm. Zawiera również mnóstwo kodu źródłowego, który jest tak skonstruowany, aby przyspieszyć naukę i zrozumienie podstawowych konstrukcji języka asemblera Armv8-A i koncepcji programowania SIMD. Po przeczytaniu tej książki będziesz w stanie kodować funkcje i algorytmy zoptymalizowane pod kątem wydajności przy użyciu 32-bitowego i 64-bitowego języka asemblera Armv8-A.
Modern Arm Assembly Language Programming kładzie nacisk na kodowanie 32-bitowych i 64-bitowych funkcji języka asemblera Armv8-A, które można wywoływać z C++. Wiele rozdziałów poświęcono również programowaniu w języku asemblera Armv8-A SIMD. Rozdziały te omawiają sposób kodowania funkcji wykorzystywanych w intensywnych obliczeniowo aplikacjach, takich jak uczenie maszynowe, przetwarzanie obrazu, kodowanie audio i wideo oraz grafika komputerowa.
Przykłady kodu źródłowego zostały opracowane przy użyciu zestawu narzędzi GNU (g++, gas i make) i przetestowane na Raspberry Pi 4 Model B z systemem Raspbian (32-bit) i Ubuntu Server (64-bit). Należy zauważyć, że jest to książka o programowaniu w języku asemblera Armv8-A, a nie o Raspberry Pi.
Czego się nauczysz.
⬤ Zapoznać się z najważniejszymi szczegółami 32-bitowej i 64-bitowej architektury Armv8-A, w tym typami danych, rejestrami ogólnego przeznaczenia, rejestrami zmiennoprzecinkowymi i SIMD oraz trybami adresowania.
Wykorzystanie 32-bitowych i 64-bitowych zestawów instrukcji Armv8-A do tworzenia funkcji zwiększających wydajność, które można wywoływać z C++.
⬤ Wykorzystanie języka asemblera Armv8-A do wydajnego manipulowania typowymi typami danych i konstrukcjami programistycznymi, w tym liczbami całkowitymi, tablicami, macierzami i strukturami zdefiniowanymi przez użytkownika.
⬤ Tworzenie funkcji języka asemblera, które wykonują skalarną arytmetykę zmiennoprzecinkową przy użyciu 32-bitowych i 64-bitowych zestawów instrukcji Armv8-A.
⬤ Wykorzystaj zestawy instrukcji SIMD Armv8-A, aby znacznie przyspieszyć działanie intensywnych obliczeniowo algorytmów w aplikacjach takich jak uczenie maszynowe, przetwarzanie obrazu, grafika komputerowa, matematyka i statystyka.
⬤ Zastosuj najnowocześniejsze strategie i techniki kodowania, aby optymalnie wykorzystać 32-bitowe i 64-bitowe zestawy instrukcji Armv8-A w celu uzyskania maksymalnej możliwej wydajności.
Dla kogo jest ta książka
Twórcy oprogramowania, którzy tworzą programy dla platform Armv8-A i chcą dowiedzieć się, jak kodować algorytmy i funkcje zwiększające wydajność przy użyciu 32-bitowych i 64-bitowych zestawów instrukcji Armv8-A. Czytelnicy powinni mieć wcześniejsze doświadczenie w programowaniu w językach wysokiego poziomu i podstawową znajomość języka C++.
© Book1 Group - wszelkie prawa zastrzeżone.
Zawartość tej strony nie może być kopiowana ani wykorzystywana w całości lub w części bez pisemnej zgody właściciela.
Ostatnia aktualizacja: 2024.11.13 21:45 (GMT)