1.

Record Nr.

UNINA9910746094603321

Autore

Kusswurm Daniel

Titolo

Modern X86 Assembly Language Programming : Covers X86 64-bit, AVX, AVX2, and AVX-512 / / by Daniel Kusswurm

Pubbl/distr/stampa

Berkeley, CA : , : Apress : , : Imprint : Apress, , 2023

ISBN

1-4842-9603-6

Edizione

[3rd ed. 2023.]

Descrizione fisica

1 online resource (688 pages)

Disciplina

004.16

Soggetti

X86 assembly language (Computer program language)

Intel microprocessors

Lingua di pubblicazione

Inglese

Formato

Materiale a stampa

Livello bibliografico

Monografia

Nota di bibliografia

Includes bibliographical references and index.

Nota di contenuto

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.

Sommario/riassunto

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.