Daniel Kusswurm – författare
712 kr
Skickas inom 5-8 vardagar
734 kr
Läs direkt efter köp
Modern X86 Assembly Language Programming shows the fundamentals of x86 assembly language programming. It focuses on the aspects of the x86 instruction set that are most relevant to application software development. The book''s structure and sample code are designed to help the reader quickly understand x86 assembly language programming and the computational capabilities of the x86 platform.
Please note: Book appendixes can be downloaded here: http://www.apress.com/9781484200650
Major topics of the book include the following:
32-bit core architecture, data types, internal registers, memory addressing modes, and the basic instruction setX87 core architecture, register stack, special purpose registers, floating-point encodings, and instruction setMMX technology and instruction setStreaming SIMD extensions (SSE) and Advanced Vector Extensions (AVX) including internal registers, packed integerarithmetic, packed and scalar floating-point arithmetic, and associated instruction sets64-bit core architecture, data types, internal registers, memory addressing modes, and the basic instruction set64-bit extensions to SSE and AVX technologiesX86 assembly language optimization strategies and techniques896 kr
Läs direkt efter köp
Gain the fundamentals of x86 64-bit assembly language programming and focus on
the updated aspects of the x86 instruction set that are most relevant to application
software 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 architecture
and AVX programming. Modern X86 Assembly Language Programming’s structure and
sample code are designed to help you quickly understand x86 assembly language
programming and the computational capabilities of the x86 platform. After reading
and 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 setUse 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 structuresUse the AVX instruction set to perform scalar floating-point arithmeticExploit 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 statisticsApply various coding strategies and techniques to optimally exploit the x86 64-bit,AVX, AVX2, and AVX-512 instruction sets for maximum possible performanceWho 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 exploit the SIMD capabilities of AVX, AVX2 and AVX-512.
615 kr
Skickas inom 10-15 vardagar
896 kr
Läs direkt efter köp
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.
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 performanceWho This Book Is For
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++.
665 kr
Skickas inom 10-15 vardagar
896 kr
Läs direkt efter köp
Learn the fundamentals of x86 Single instruction multiple data (SIMD) programming using C++ intrinsic functions and x86-64 assembly language. This book emphasizes x86 SIMD programming topics and technologies that are relevant to modern software development in applications which can exploit data level parallelism, important for the processing of big data, large batches of data and related important in data science and much more.
Modern Parallel Programming with C++ and Assembly Language is an instructional text that explains x86 SIMD programming using both C++ and assembly language. The book’s content and organization are designed to help you quickly understand and exploit the SIMD capabilities of x86 processors. It also contains an abundance of source code that is structured to accelerate learning and comprehension of essential SIMD programming concepts and algorithms.
After reading this book, you will be able to code performance-optimized AVX, AVX2, andAVX-512 algorithms using either C++ intrinsic functions or x86-64 assembly language.
What You Will Learn
Understand the essential details about x86 SIMD architectures and instruction sets including AVX, AVX2, and AVX-512.Master x86 SIMD data types, arithmetic instructions, and data management operations using both integer and floating-point operands.Code performance-enhancing functions and algorithms that fully exploit the SIMD capabilities of a modern x86 processor.Employ C++ intrinsic functions and x86-64 assembly language code to carry out arithmetic calculations using common programming constructs including arrays, matrices, and user-defined data structures.Harness the x86 SIMD instruction sets to significantly accelerate the performance of computationally intense algorithms in applications such as machine learning, image processing, computer graphics, statistics, and matrix arithmetic.Apply leading-edge coding strategies and techniques to optimally exploit the x86 SIMD instruction sets for maximum possible performance.Who This Book Is For
Intermediate to advanced programmers/developers in general. Readers of this book should have previous programming experience with modern C++ (i.e., ANSI C++11 or later) and Assembly. Some familiarity with Microsoft’s Visual Studio or the GNU toolchain will be helpful. The target audience for Modern X86 SIMD Programming are experienced software developers, programmers and maybe some hobbyists.896 kr
Läs direkt efter köp
976 kr
Skickas inom 3-6 vardagar
1 467 kr
Läs direkt efter köp
Learn how to use the classes, algorithms, and other programming constructs of C++ STL. This comprehensive and practical guide covers a broad range of STL programming topics and highlights numerous programming constructs from the C++20 and C++23 standards.
Mastering use of STL can be daunting for both new and experienced C++ programmers. It doesn’t help that the ISO C++ specification documents are meticulous and verbose. This book is organized to help you quickly understand C++ STL programming, focusing on the real-world aspects of its usage. Rather than spend time providing extensive explanations of the inner workings of STL, author Daniel Kusswurm judiciously explores these intricacies only when they advance the reader’s understanding of a particular topic.
This book is accompanied by over 100 source code examples, designed to accelerate learning by emphasizing practical use cases. It coincides with the C++20 and C++23 standards and works with any OS platform that supports these standards including Windows (Visual C++), Linux (GNU C++) and macOS (clang). After reading Practical C++ STL Programming, you’ll be able to exploit the computational capabilities of STL to implement a wide variety of software algorithms and solve unique programming challenges.
What You Will Learn
Explore STL capabilities, including how to generate formatted output, utilize sequence containers, apply utility classes, exploit smart pointers, manipulate associative containers, and exercise container adaptors.Apply algorithms and iterators to perform a wide variety of container operations including sorts, searches, insertions, removals, and erasures.Utilize ranges and range iterators, adaptors, views, compositions, projections, and factories.Perform file and directory operations using STL’s file system classes.Execute chronological calculations and formatting using the time classes.Employ STL’s random number generation and distribution classes.Implement numerical processing algorithms using STL’s std::valarray and std:complex classes.Accelerate program performance using STL’s concurrency classes and algorithm execution policies.Who This Book Is For
Software developers and programmers who understand the basic syntax and semantics of C++ and want/need to learn how to use STL’s classes and algorithms, or programmers who have experience using STL as specified by the C++11/14/17 standards and are interested in learning how to use the new STL classes and algorithms of C++20/23. Computer science/engineering students or hobbyists who want to learn about or better understand the capabilities of STL.
619 kr
Kommande