- Paperback: 648 pages
- Publisher: Wiley; 3 edition (October 5, 2009)
- Language: English
- ISBN-10: 0470497025
- ISBN-13: 978-0470497029
- Product Dimensions: 7.4 x 1.5 x 9.1 inches
- Shipping Weight: 2 pounds (View shipping rates and policies)
- Average Customer Review: 96 customer reviews
- Amazon Best Sellers Rank: #217,111 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Assembly Language Step-by-Step: Programming with Linux 3rd Edition
Use the Amazon App to scan ISBNs and compare prices.
The Amazon Book Review
Author interviews, book reviews, editors picks, and more. Read it now
Frequently bought together
Customers who bought this item also bought
From the Back Cover
Learn assembly language, and you learn the machine
In this third edition of his bestselling guide to Intel x86 assembly language under Linux, Jeff Duntemann positions assembly not as unapproachable geek arcana but as a first programming language, suitable for readers who have no previous programming experience. As the fundamental language of the CPU, assembly lays the groundwork for all other programming languages, especially native-code C, C++, and Pascal. By mastering assembly, programmers will learn how x86 computers operate all the way down to "the bare silicon," at a level of detail that no other approach can equal.
Assembly Language Step by Step, Third Edition, helps you:
Review the fundamental concepts behind computing and programming, including the hexadecimal and binary number bases
Understand the evolution of the Intel CPUs and how modern x86 processors operate
Grasp the process of programming itself, from editing source code through assembly, linking, and debugging
Comprehend x86 32-bit protected-mode memory addressing
Learn the x86 instruction set by dissecting numerous complete example programs
Work with the wealth of free programming utilities under Ubuntu Linux, including the Kate editor, the NASM assembler, and the GNU toolset
Master practical details of Linux programming, including procedures, macros, the INT 80h call gate, and calls to the standard C libraries
About the Author
Jeff Duntemann has been writing about computing for over thirty years, and is the author of numerous books on programming, wireless networking, and system administration. He has been a columnist in Dr. Dobb's Journal, and has edited well-known programming publications like PC Techniques and Visual Developer. After hours, he enjoys blogging, astronomy, amateur radio, and writing science fiction.
Browse award-winning titles. See more
Top customer reviews
There was a problem filtering reviews right now. Please try again later.
Based on numerous factors and an established curve, regarding the sparse nature of content on the subject, feel the five star rating deserved.
The only (minor) negative observations I have are:
1) The book only addresses 32 bit programming in detail, but 32 bit programs will run in 64 bit without change.
2) Duntemann dives into open source software and teaches/recommends a particular debugger that is no longer being developed. Most of the commands will map to other debuggers (it's all GDB underneath) but this weakens an otherwise excellent book.
Highly recommended if you want to learn assembly language on LINUX.
Art of Assembly Language is stronger in terms of structure and description of concepts. It is more high level and provides the reader with a clearer general outline of assembly language and computer program design related to CPU's. The benefit of the Art of Assembly language is that you may gain insights into how to optimize a computer program regardless of programming language.
Assembly Language Step-by-Step is much, much more detailed and is designed primarily for someone who actually intends to use assembly language. It is more of a hands-on, real-world book than the Art of Assembly language. Based on the amount of detail, you may not come away with a clear overview, but you will have knowledge about using assembly language in a very direct and concrete way. The details that are provided can give you tremendous understanding about the different ways software code can be set up to do things. It is a book that gives credibility to the old saying that there are thousands of ways to write the same code.
I used managed programming languages for 11 years straight. In the early years, I have seen these managed languages run slower in some areas compared to similar solutions in other languages not based on a managed paradigm. A knowledge of system characteristics and how managed languages transform into system representations can definitely help in producing more efficient solutions. Books like this one can be a benefit to anyone regardless of chosen language or to better inform their understanding of computers in conversation or use.
I'm still working through the book, but if you actually use it from front to back, it will take you a long time.