Modern X86 Assembly Language Programming: Covers X86 64-bit, AVX, AVX2, and AVX-512

Book description

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.

Product information

  • Title: Modern X86 Assembly Language Programming: Covers X86 64-bit, AVX, AVX2, and AVX-512
  • Author(s): Daniel Kusswurm
  • Release date: September 2023
  • Publisher(s): Apress
  • ISBN: 9781484296035