Professional Assembly language
The first time I had read this book was in 2005. Since then there were a few times I needed to jump back to it for something I was missing. Recently, I advised a friend willing to learn x86 assembly to read it. Consequently, I’ll post a quick overview of the book to let more people know about it.
Title: Professional Assembly Language
Author: Richard Blum
Chapter 1: What Is Assembly Language?
As the title suggests, this is an introduction which is there to familiarize the reader with instruction code handling from high level languages to lower level, leading to assembly language. Then, R. Blum gives a brief description of opcode mnemonics and similar information essential for understanding what assembly language is.
Chapter 2: The IA-32 Platform
Starting from core components of IA-32 architecture such as control and execution units, registers, flags etc., it moves to more advanced concepts like x87 floating-point, MMX, SIMD, threading, etc. The last section is dedicated to non-Intel processors of the IA-32 family.
Chapter 3: The Tools of the Trade
The third chapter is basically a walk through the various open source utilities such as linkers, compilers, assemblers, profilers, etc. that are valuable for moving on with assembly programming in Linux environments.
Chapter 4: A Sample Assembly Language Program
Beginning from the very essentials, author starts building a basic CPUID sample program written entirely in IA-32 assembly language. Later in this chapter, more details are provided in debugging the latter application as well as using C library functions in an assembly code.
Chapter 5: Moving Data
From this chapter the more juicy parts of this book begin. Author goes through the basics of data sections and symbols to “move” and conditional “move” instructions. The next section is about instructions used for exchanging data and at last, using the acquired knowledge along with the stack segment instructions and registers. At the end of this chapter you can also find a small paragraph dedicated to optimizations for memory access.
You might also like
Inventor Essentials - A Comprehensive Introduction
Thames & Kosmos Electricity and Magnetism
Toy (Thames & Kosmos)
Melissa & Doug Traffic Signs and Vehicles
Toy (Melissa & Doug)