Modern X86 assembly language programming 32-bit, 64-bit, SSE, and AVX

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 und...

Descripción completa

Detalles Bibliográficos
Otros Autores: Kusswurm, Daniel. author (author)
Formato: Libro electrónico
Idioma:Inglés
Publicado: Berkeley, CA : Apress [2014]
Colección:Expert's voice in programming
Materias:
Ver en Biblioteca Universitat Ramon Llull:https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009629746306719
Tabla de Contenidos:
  • ""Contents at a Glance""; ""Contents""; ""About the Author""; ""About the Technical Reviewer""; ""Acknowledgments""; ""Introduction""; ""Chapter 1: X86-32 Core Architecture""; ""Historical Overview""; ""Data Types""; ""Fundamental Data Types""; ""Numerical Data Types""; ""Packed Data Types""; ""Miscellaneous Data Types""; ""Internal Architecture""; ""Segment Registers""; ""General-Purpose Registers""; ""EFLAGS Register""; ""Instruction Pointer""; ""Instruction Operands""; ""Memory Addressing Modes""; ""Instruction Set Overview""; ""Data Transfer""; ""Binary Arithmetic""; ""Data Comparison""
  • ""Data Conversion""""Logical""; ""Rotate and Shift""; ""Byte Set and Bit String""; ""String""; ""Flag Manipulation""; ""Control Transfer""; ""Miscellaneous""; ""Summary""; ""Chapter 2: X86-32 Core Programming""; ""Getting Started""; ""First Assembly Language Function""; ""Integer Multiplication and Division""; ""X86-32 Programming Fundamentals""; ""Calling Convention""; ""Memory Addressing Modes""; ""Integer Addition""; ""Condition Codes""; ""Arrays""; ""One-Dimensional Arrays""; ""Two-Dimensional Arrays""; ""Structures""; ""Simple Structures""; ""Dynamic Structure Creation""; ""Strings""
  • ""Counting Characters""""String Concatenation""; ""Comparing Arrays""; ""Array Reversal""; ""Summary""; ""Chapter 3: X87 Floating-Point Unit""; ""X87 FPU Core Architecture""; ""Data Registers""; ""X87 FPU Special-Purpose Registers""; ""X87 FPU Operands and Encodings""; ""X87 FPU Instruction Set""; ""Data Transfer""; ""Basic Arithmetic""; ""Data Comparison""; ""Transcendental""; ""Constants""; ""Control""; ""Summary""; ""Chapter 4: X87 FPU Programming""; ""X87 FPU Programming Fundamentals""; ""Simple Arithmetic""; ""Floating-Point Compares""; ""X87 FPU Advanced Programming""
  • ""Floating-Point Arrays""""Transcendental Instructions""; ""Advanced Stack Usage""; ""Summary""; ""Chapter 5: MMX Technology""; ""SIMD Processing Concepts""; ""Wraparound vs. Saturated Arithmetic""; ""MMX Execution Environment""; ""MMX Instruction Set""; ""Data Transfer""; ""Arithmetic""; ""Comparison""; ""Conversion""; ""Logical and Shift""; ""Unpack and Shuffle""; ""Insertion and Extraction""; ""State and Cache Control""; ""Summary""; ""Chapter 6: MMX Technology Programming""; ""MMX Programming Fundamentals""; ""Packed Integer Addition""; ""Packed Integer Shifts""
  • ""Packed Integer Multiplication""""MMX Advanced Programming""; ""Integer Array Processing""; ""Using MMX and the x87 FPU""; ""Summary""; ""Chapter 7: Streaming SIMD Extensions""; ""X86-SSE Overview""; ""X86-SSE Execution Environment""; ""X86-SSE Register Set""; ""X86-SSE Data Types""; ""X86-SSE Control-Status Register""; ""X86-SSE Processing Techniques""; ""X86-SSE Instruction Set Overview""; ""Scalar Floating-Point Data Transfer""; ""Scalar Floating-Point Arithmetic""; ""Scalar Floating-Point Comparison""; ""Scalar Floating-Point Conversion""; ""Packed Floating-Point Data Transfer""
  • ""Packed Floating-Point Arithmetic""