Modern X86 Assembly Language Programming: Covers X86 64-bit, AVX, AVX2, and AVX-512
Autor Daniel Kusswurmen Limba Engleză Paperback – 9 sep 2023
This book is an instructional text that will teach you how to code x86-64 assembly language functions. It also explains how you can exploit the SIMD capabilities of an x86-64 processor using x86-64 assembly language and the AVX, AVX2, and AVX-512 instruction sets.
This updated edition’s content and organization are designed to help you quickly understand x86-64 assembly language programming and the unique computational capabilities of x86 processors. The source code is structured to accelerate learning and comprehension of essential x86-64 assembly language programming constructs and data structures. Modern X86 Assembly Language Programming, Third Edition includes source code for both Windows and Linux. The source code elucidates current x86-64 assembly language programming practices, run-time calling conventions, and the latest generation of software development tools.
What You Will Learn
- Understand important details of the x86-64 processor platform, including its core architecture, data types, registers, memory addressing modes, and the basic instruction set
- Use the x86-64 instruction set to create assembly language functions that are callable from C++
- Create assembly language code for both Windows and Linux using modern software development tools including MASM (Windows) and NASM (Linux)
- Employ x86-64 assembly language to efficiently manipulate common data types and programming constructs including integers, text strings, arrays, matrices, and user-defined structures
- Explore indispensable elements of x86 SIMD architectures, register sets, and data types.
- Master x86 SIMD arithmetic and data operations using both integer and floating-point operands
- Harness the AVX, AVX2, and AVX-512 instruction sets to accelerate the performance of computationally-intense calculations in machine learning, image processing, signal processing, computer graphics, statistics, and matrix arithmetic applications
- Apply leading-edge coding strategies to optimally exploit the AVX, AVX2, and AVX-512 instruction sets for maximum possible performance
Who This Book Is For
Software developers who are creating programs for x86 platforms and want to learn how to code performance-enhanced algorithms using the core x86-64 instruction set; developers who need to learn how to write SIMD functions or accelerate the performance of existing code using the AVX, AVX2, and AVX-512 instruction sets; and computer science/engineering students or hobbyists who want to learn or better understand x86-64 assembly language programming and the AVX, AVX2, and AVX-512 instruction sets.
Toate formatele și edițiile | Preț | Express |
---|---|---|
Paperback (2) | 259.62 lei 38-44 zile | +73.15 lei 4-10 zile |
Apress – 9 sep 2023 | 354.54 lei 3-5 săpt. | +73.15 lei 4-10 zile |
Apress – 24 noi 2014 | 259.62 lei 38-44 zile |
Preț: 354.54 lei
Preț vechi: 443.18 lei
-20% Nou
Puncte Express: 532
Preț estimativ în valută:
67.85€ • 70.65$ • 57.34£
67.85€ • 70.65$ • 57.34£
Carte disponibilă
Livrare economică 17 februarie-03 martie
Livrare express 31 ianuarie-06 februarie pentru 83.14 lei
Preluare comenzi: 021 569.72.76
Specificații
ISBN-13: 9781484296028
ISBN-10: 1484296028
Pagini: 680
Ilustrații: XX, 680 p. 105 illus.
Dimensiuni: 178 x 254 x 44 mm
Greutate: 1.2 kg
Ediția:Third Edition
Editura: Apress
Colecția Apress
Locul publicării:Berkeley, CA, United States
ISBN-10: 1484296028
Pagini: 680
Ilustrații: XX, 680 p. 105 illus.
Dimensiuni: 178 x 254 x 44 mm
Greutate: 1.2 kg
Ediția:Third Edition
Editura: Apress
Colecția Apress
Locul publicării:Berkeley, CA, United States
Cuprins
Chapter 1 – X86-Core Architecture.- Chapter 2 – X86-64 Core Programming (Part 1).- Chapter 3 – X86-64 Core Programming (Part 2).- Chapter 4 – X86-64 Core Programming (Part 3).- Chapter 5 – AVX Programming - Scalar Floating-Point.- Chapter 6 –Run-Time Calling Conventions.- Chapter 7 –Introduction to X86-AVX SIMD Programming.- Chapter 8 – AVX Programming – Packed Integers.- Chapter 9 – AVX Programming – Packed Floating Point.- Chapter 10 – AVX2 Programming – Packed Integers.- Chapter 11 – AVX2 Programming – Packed Floating Point (Part 1).- Chapter 12 – AVX2 Programming – Packed Floating Point (Part 2).- Chapter 13 – AVX-512 Programming – Packed Integers.- Chapter 14 – AVX-512 Programming – Packed Floating Point (Part 1).- Chapter 15 – AVX-512 Programming – Packed Floating Point (Part 2).- Chapter 16 – Advanced Assembly Language Programming.- Chapter 17 – Assembly Language Optimization and Development Guidelines. – Appendix A – Source Code and Development Tools. – Appendix B – References and Additional Resources.
Notă biografică
Daniel Kusswurm has 40+ years of professional experience as a software developer, computer scientist, and author. 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 x86 assembly language and the AVX, AVX2, and AVX-512 instruction sets to significantly improve the performance of computationally intense algorithms and 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 is also the author multiple computer programming books, including Modern Arm Assembly Language Programming (ISBN: 9781484262665) and Modern Parallel Programming with C++ and Assembly Language (ISBN: 9781484279175), both published by Apress.
Daniel is also the author multiple computer programming books, including Modern Arm Assembly Language Programming (ISBN: 9781484262665) and Modern Parallel Programming with C++ and Assembly Language (ISBN: 9781484279175), both published by Apress.
Textul de pe ultima copertă
This book is an instructional text that will teach you how to code x86-64 assembly language functions. It also explains how you can exploit the SIMD capabilities of an x86-64 processor using x86-64 assembly language and the AVX, AVX2, and AVX-512 instruction sets.
This updated edition’s content and organization are designed to help you quickly understand x86-64 assembly language programming and the unique computational capabilities of x86 processors. The source code is structured to accelerate learning and comprehension of essential x86-64 assembly language programming constructs and data structures. Modern X86 Assembly Language Programming, Third Edition includes source code for both Windows and Linux. The source code elucidates current x86-64 assembly language programming practices, run-time calling conventions, and the latest generation of software development tools.
You will:
- Understand important details of the x86-64 processor platform, including its core architecture, data types, registers, memory addressing modes, and the basic instruction set
- Use the x86-64 instruction set to create assembly language functions that are callable from C++
- Create assembly language code for both Windows and Linux using modern software development tools including MASM (Windows) and NASM (Linux)
- Employ x86-64 assembly language to efficiently manipulate common data types and programming constructs including integers, text strings, arrays, matrices, and user-defined structures
- Explore indispensable elements of x86 SIMD architectures, register sets, and data types.
- Master x86 SIMD arithmetic and data operations using both integer and floating-point operands
- Harness the AVX, AVX2, and AVX-512 instruction sets to accelerate the performance of computationally-intense calculations in machine learning, image processing, signal processing, computer graphics, statistics, and matrix arithmetic applications
- Apply leading-edge coding strategies to optimally exploit the AVX, AVX2, and AVX-512 instruction sets for maximum possible performance
Caracteristici
Includes chapters dedicated to x86-64 SIMD programming and related AVX, AVX2, and AVX-512 instruction sets Explains x86-64 assembly language programming for Windows and Linux using modern software development tools Expounds essential x86-64 assembly language programming concepts and SIMD coding techniques