* Unlike 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
engineering
* Covering 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 applications
* Demonstrates how to manipulate data, incorporate advanced
functions and libraries, and maximize application performance
* Examples use C as a high-level language, Linux as the
development environment, and GNU tools for assembling, compiling,
linking, and debugging
Tabla de materias
Acknowledgments.
Contents.
Introduction.
Chapter 1: What Is Assembly Language?
Chapter 2: The IA-32 Platform.
Chapter 3: The Tools of the Trade.
Chapter 4: A Sample Assembly Language Program.
Chapter 5: Moving Data.
Chapter 6: Controlling Execution Flow.
Chapter 7: Using Numbers.
Chapter 8: Basic Math Functions.
Chapter 9: Advanced Math Functions.
Chapter 10: Working with Strings.
Chapter 11: Using Functions.
Chapter 12: Using Linux System Calls.
Chapter 13: Using Inline Assembly.
Chapter 14: Calling Assembly Libraries.
Chapter 15: Optimizing Routines.
Chapter 16: Using Files.
Chapter 17: Using Advanced IA-32 Features.
Index.
Sobre el autor
Richard Blum has worked for a large U.S. government
organization for more than 15 years. During that time, he has had
the opportunity to program utilities in various programming
languages: C, C++, Java, and Microsoft VB.NET and C#. With this
experience, Rich has often found the benefit of reviewing assembly
language code generated by compilers and utilizing assembly
language routines to speed up higher-level language programs.
Rich has a bachelor of science degree in electrical engineering
from Purdue University, where he worked on many assembly language
projects. (Of course, this was back in the eight-bit processor
days.) He also has a master of science degree in management from
Purdue University, specializing in Management Information Systems.