05224nam 22006374a 450 991082841320332120200520144314.01-280-25262-697866102526260-7645-9561-X(CKB)1000000000244156(EBL)225831(OCoLC)57756675(SSID)ssj0000228430(PQKBManifestationID)11223208(PQKBTitleCode)TC0000228430(PQKBWorkID)10154645(PQKB)10779406(Au-PeEL)EBL225831(CaPaEBR)ebr10113951(CaONFJC)MIL25262(CaSebORM)9780764579011(MiAaPQ)EBC225831(OCoLC)722453021(OCoLC)ocn722453021(EXLCZ)99100000000024415620041207d2005 uy 0engur|n|---|||||txtccrProfessional assembly language /Richard Blum1st editionIndianapolis, IN Wileyc20051 online resource (576 p.)Includes index.0-7645-7901-0 Professional Assembly Language; About the Author; Acknowledgments; Contents; Introduction; Who This Book Is For; What This Book Covers; How This Book Is Structured; What You Need to Use This Book; Conventions; Source Code; Errata; p2p. wrox. com; Chapter 1: What Is Assembly Language?; Processor Instructions; High-Level Languages; Assembly Language; Summary; Chapter 2: The IA-32 Platform; Core Parts of an IA-32 Processor; Advanced IA-32 Features; The IA-32 Processor Family; Summary; Chapter 3: The Tools of the Trade; The Development Tools; The GNU Assembler; The GNU Linker; The GNU CompilerThe GNU Debugger ProgramThe KDE Debugger; The GNU Objdump Program; The GNU Profiler Program; A Complete Assembly Development System; Summary; Chapter 4: A Sample Assembly Language Program; The Parts of a Program; Creating a Simple Program; Debugging the Program; Using C Library Functions in Assembly; Summary; Chapter 5: Moving Data; Defining Data Elements; Moving Data Elements; Conditional Move Instructions; Exchanging Data; The Stack; Optimizing Memory Access; Summary; Chapter 6: Controlling Execution Flow; The Instruction Pointer; Unconditional Branches; Conditional Branches; LoopsDuplicating High-Level Conditional BranchesOptimizing Branch Instructions; Summary; Chapter 7: Using Numbers; Numeric Data Types; Integers; SIMD Integers; Binary Coded Decimal; Floating-Point Numbers; Conversions; Summary; Chapter 8: Basic Math Functions; Integer Arithmetic; Shift Instructions; Decimal Arithmetic; Logical Operations; Summary; Chapter 9: Advanced Math Functions; The FPU Environment; Basic Floating-Point Math; Advanced Floating-Point Math; Floating-Point Conditional Branches; Saving and Restoring the FPU State; Waiting versus Nonwaiting InstructionsOptimizing Floating-Point CalculationsSummary; Chapter 10: Working with Strings; Moving Strings; Storing and Loading Strings; Comparing Strings; Scanning Strings; Summary; Chapter 11: Using Functions; Defining Functions; Assembly Functions; Passing Data Values in C Style; Using Separate Function Files; Using Command-Line Parameters; Summary; Chapter 12: Using Linux System Calls; The Linux Kernel; System Calls; Using System Calls; Advanced System Call Return Values; Tracing System Calls; System Calls versus C Libraries; Summary; Chapter 13: Using Inline Assembly; What Is Inline Assembly?Basic Inline Assembly CodeExtended ASM; Using Inline Assembly Code; Summary; Chapter 14: Calling Assembly Libraries; Creating Assembly Functions; Compiling the C and Assembly Programs; Using Assembly Functions in C Programs; Using Assembly Functions in C++ Programs; Creating Static Libraries; Using Shared Libraries; Debugging Assembly Functions; Summary; Chapter 15: Optimizing Routines; Optimized Compiler Code; Creating Optimized Code; Optimization Tricks; Summary; Chapter 16: Using Files; The File-Handling Sequence; Opening and Closing Files; Writing to Files; Reading FilesReading, Processing, and Writing DataUnlike high-level languages such as Java and C++, assembly language is much closer to the machine code that actually runs computers; it's used to create programs or modules that are very fast and efficient, as well as in hacking exploits and reverse engineeringCovering assembly language in the Pentium microprocessor environment, this code-intensive guide shows programmers how to create stand-alone assembly language programs as well as how to incorporate assembly language libraries or routines into existing high-level applicationsDemonstrates how to manipulate data, incorporateAssembler language (Computer program language)Assembler language (Computer program language)005.13/6Blum Richard1962-447753MiAaPQMiAaPQMiAaPQBOOK9910828413203321Professional assembly language4042586UNINA