Modern X86 Assembly Language Programming

Modern X86 Assembly Language Programming

Editura
An publicare
2018
Nr. Pagini
604
ISBN
9781484240625

Descriere

Description Gain the fundamentals of x86 64-bit assembly language programming and focus onthe updated aspects of the x86 instruction set that are most relevant to applicationsoftware development. This book covers topics including x86 64-bit programming and Advanced Vector Extensions (AVX) programming. The focus in this second edition is exclusively on 64-bit base programming architectureand AVX programming. Modern X86 Assembly Language Programming's structure andsample code are designed to help you quickly understand x86 assembly languageprogramming and the computational capabilities of the x86 platform. After readingand using this book, you'll be able to code performance-enhancing functions andalgorithms using x86 64-bit assembly language and the AVX, AVX2 and AVX-512 instruction set extensions. What You Will Learn Discover details of the x86 64-bit platform including its core architecture, data types, registers, memory addressing modes, and the basic instruction set Use the x86 64-bit instruction set to create performance-enhancing functions thatare callable from a high-level language (C++)Employ x86 64-bit assembly language to efficiently manipulate common data typesand programming constructs including integers, text strings, arrays, and structures Use the AVX instruction set to perform scalar floating-point arithmetic Exploit the AVX, AVX2, and AVX-512 instruction sets to significantly accelerate theperformance of computationally-intense algorithms in problem domains such asimage processing, computer graphics, mathematics, and statistics Apply various coding strategies and techniques to optimally exploit the x86 64-bit, AVX, AVX2, and AVX-512 instruction sets for maximum possible performance Who This Book Is For Software developers who want to learn how to write code using x86 64-bit assembly language. It's also ideal for software developers who already have a basic understanding of x86 32-bit or 64-bit assembly language programming and are interested in learning how to

Pe aceeași temă