Modern Arm Assembly Language Programming: Covers Armv8-A 32-bit, 64-bit, and SIMD
Autor Daniel Kusswurmen Limba Engleză Paperback – 8 oct 2020
Modern Arm Assembly Language Programming accentuates the coding of Armv8-A 32-bit and 64-bit assembly language functions that are callable from C++. Multiple chapters are also devoted to Armv8-A SIMD assembly language programming. These chapters discuss how to code functions that are used in computationally intense applications such as machine learning, image processing, audio and video encoding, and computer graphics.
The source code examples were developed using the GNU toolchain (g++, gas, and make) and tested on a Raspberry Pi 4 Model B running Raspbian (32-bit) and Ubuntu Server (64-bit). It is important to note that this is a book about Armv8-A assembly language programming and not the Raspberry Pi.
What You Will Learn
- See essential details about the Armv8-A 32-bit and 64-bit architectures including data types, general purpose registers, floating-point and SIMD registers, and addressing modes Use the Armv8-A 32-bit and 64-bit instruction sets to create performance-enhancing functions that are callable from C++
- Employ Armv8-A assembly language to efficiently manipulate common data types and programming constructs including integers, arrays, matrices, and user-defined structures
- Create assembly language functions that perform scalar floating-point arithmetic using the Armv8-A 32-bit and 64-bit instruction sets
- Harness the Armv8-A SIMD instruction sets to significantly accelerate the performance of computationally intense algorithms in applications such as machine learning, image processing, computer graphics, mathematics, and statistics.
- Apply leading-edge coding strategies and techniques to optimally exploit the Armv8-A 32-bit and 64-bit instruction sets for maximum possible performance
Software developers who are creating programs for Armv8-A platforms and want to learn how to code performance-enhancing algorithms and functions using the Armv8-A 32-bit and 64-bit instruction sets. Readers should have previous high-level language programming experience and a basic understanding of C++.
Preț: 311.89 lei
Preț vechi: 389.87 lei
-20% Nou
Puncte Express: 468
Preț estimativ în valută:
59.69€ • 62.00$ • 49.58£
59.69€ • 62.00$ • 49.58£
Carte disponibilă
Livrare economică 13-27 ianuarie 25
Livrare express 27 decembrie 24 - 02 ianuarie 25 pentru 108.75 lei
Preluare comenzi: 021 569.72.76
Specificații
ISBN-13: 9781484262665
ISBN-10: 1484262662
Pagini: 446
Ilustrații: XIX, 465 p. 67 illus.
Dimensiuni: 178 x 254 x 36 mm
Greutate: 0.84 kg
Ediția:1st ed.
Editura: Apress
Colecția Apress
Locul publicării:Berkeley, CA, United States
ISBN-10: 1484262662
Pagini: 446
Ilustrații: XIX, 465 p. 67 illus.
Dimensiuni: 178 x 254 x 36 mm
Greutate: 0.84 kg
Ediția:1st ed.
Editura: Apress
Colecția Apress
Locul publicării:Berkeley, CA, United States
Cuprins
Chapter 1 – Armv8-32 Architecture.- Chapter 2 – Armv8-32 Core Programming – Part 1.- Chapter 3 – Armv8-32 Core Programming – Part 2.- Chapter 4 – Armv8-32 Core Programming – Part 3.- Chapter 5 – Armv8-32 Floating-Point Architecture.- Chapter 6 – Armv8-32 Floating-Point Programming.- Chapter 7 – Armv8-32 SIMD Architecture.- Chapter 8 – Armv8-32 SIMD Integer Programming.- Chapter 9 – Armv8-32 SIMD Floating-Point Programming.- Chapter 10 – Armv8-64 Architecture.- Chapter 11 – Armv8-64 Core Programming – Part 1.- Chapter 12 – Armv8-64 Core Programming – Part2.- Chapter 13 – Armv8-64 Floating-Point Programming.- Chapter 14 – Armv8-64 SIMD Integer Programming.- Chapter 15 – Armv8-64 SIMD Floating-Point Programming.- Chapter 16 – Armv8-64 Advanced SIMD Programming.- Chapter 17 –Optimization Strategies and Techniques.- Appendix A – Source Code and Software Development Tools.- Appendix B – References and Additional Resources.
Notă biografică
Daniel Kusswurm has over 35 years of professional experience as a software developer and computer scientist. During his career, he has developed innovative software for medical devices, scientific instruments, and image processing applications. On many of these projects, he successfully employed assembly language to significantly improve the performance of computationally intense algorithms or solve unique programming challenges. His educational background includes a BS in electrical engineering technology from Northern Illinois University along with an MS and PhD in computer science from DePaul University. Daniel Kusswurm is also the author of Modern X86 Assembly Language Programming (ISBN-13: 978-1484200650) and Modern X86 Assembly Language Programming, Second Edition (ISBN-13: 978-1484240625), both published by Apress.
Textul de pe ultima copertă
Gain the fundamentals of Armv8-A 32-bit and 64-bit assembly language programming. This book emphasizes Armv8-A assembly language topics that are relevant to modern software development. It is designed to help you quickly understand Armv8-A assembly language programming and the computational resources of Arm’s SIMD platform. It also contains an abundance of source code that is structured to accelerate learning and comprehension of essential Armv8-A assembly language constructs and SIMD programming concepts. After reading this book, you will be able to code performance-optimized functions and algorithms using Armv8- A 32-bit and 64-bit assembly language.
Modern Arm Assembly Language Programming accentuates the coding of Armv8-A 32-bit and 64-bit assembly language functions that are callable from C++. Multiple chapters are also devoted to Armv8-A SIMD assembly language programming. These chapters discuss how to code functions that are used in computationally intense applications such as machine learning, image processing, audio and video encoding, and computer graphics.
You will:
Modern Arm Assembly Language Programming accentuates the coding of Armv8-A 32-bit and 64-bit assembly language functions that are callable from C++. Multiple chapters are also devoted to Armv8-A SIMD assembly language programming. These chapters discuss how to code functions that are used in computationally intense applications such as machine learning, image processing, audio and video encoding, and computer graphics.
You will:
- See essential details about the Armv8-A 32-bit and 64-bit architectures including data types, general purpose registers, floating-point and SIMD registers, and addressing modes
- Use the Armv8-A 32-bit and 64-bit instruction sets to create performance-enhancing functions that are callable from C++
- Employ Armv8-A assembly language to efficiently manipulate common data types and programming constructs including integers, arrays, matrices, and user-defined structures
- Create assembly language functions that perform scalar floating-point arithmetic using the Armv8-A 32-bit and 64-bit instruction sets
- Harness the Armv8-A SIMD instruction sets to significantly accelerate the performance of computationally intense algorithms in applications such as machine learning, image processing, computer graphics, mathematics, and statistics.
- Apply leading-edge coding strategies and techniques to optimally exploit the Armv8-A 32-bit and 64-bit instruction sets for maximum possible performance
Caracteristici
The author has over 35 years of professional experience as a software developer and computer scientist Identifies and explains essential Armv8-A assembly language programming concepts in half the pages the official instructions take Includes six chapters dedicated to SIMD algorithms programming