Skip to main content

Assembly Language Step-by-Step: Programming with Linux, 3rd Edition




Assembly Language Step-by-Step: Programming with Linux, 3rd Edition

Jeff Duntemann

ISBN: 978-0-470-49702-9 October 2009 648 Pages


The eagerly anticipated new edition of the bestselling introduction to x86 assembly language

The long-awaited third edition of this bestselling introduction to assembly language has been completely rewritten to focus on 32-bit protected-mode Linux and the free NASM assembler. Assembly is the fundamental language bridging human ideas and the pure silicon hearts of computers, and popular author Jeff Dunteman retains his distinctive lighthearted style as he presents a step-by-step approach to this difficult technical discipline.

He starts at the very beginning, explaining the basic ideas of programmable computing, the binary and hexadecimal number systems, the Intel x86 computer architecture, and the process of software development under Linux. From that foundation he systematically treats the x86 instruction set, memory addressing, procedures, macros, and interface to the C-language code libraries upon which Linux itself is built.

  • Serves as an ideal introduction to x86 computing concepts, as demonstrated by the only language directly understood by the CPU itself
  • Uses an approachable, conversational style that assumes no prior experience in programming of any kind
  • Presents x86 architecture and assembly concepts through a cumulative tutorial approach that is ideal for self-paced instruction
  • Focuses entirely on free, open-source software, including Ubuntu Linux, the NASM assembler, the Kate editor, and the Gdb/Insight debugger
  • Includes an x86 instruction set reference for the most common machine instructions, specifically tailored for use by programming beginners
  • Woven into the presentation are plenty of assembly code examples, plus practical tips on software design, coding, testing, and debugging, all using free, open-source software that may be downloaded without charge from the Internet.
Introduction: "Why Would You Want to Do That?"

Chapter 1 Another Pleasant Valley Saturday.

Chapter 2 Alien Bases.

Chapter 3 Lifting the Hood.

Chapter 4 Location, Location, Location.

Chapter 5 The Right to Assemble.

Chapter 6 A Place to Stand, with Access to Tools.

Chapter 7 Following Your Instructions.

Chapter 8 Our Object All Sublime.

Chapter 9 Bits, Flags, Branches, and Tables.

Chapter 10 Dividing and Conquering.

Chapter 11 Strings and Things.

Chapter 12 Heading Out to C.

Conclusion: Not the End, But Only the Beginning.

Appenix A Partial x86 Instruction Set Reference.

Appendix B Character Set Charts.