Skip to content
Scan a barcode
Scan
Paperback The Art of Assembly Language, 2nd Edition Book

ISBN: 1593272073

ISBN13: 9781593272074

The Art of Assembly Language, 2nd Edition

Select Format

Select Condition ThriftBooks Help Icon

Recommended

Format: Paperback

Condition: Good

$22.79
Save $37.16!
List Price $59.95
Almost Gone, Only 1 Left!

Book Overview

Assembly is a low-level programming language that's one step above a computer's native machine language. Although assembly language is commonly used for writing device drivers, emulators, and video games, many programmers find its somewhat unfriendly syntax intimidating to learn and use.

Since 1996, Randall Hyde's The Art of Assembly Language has provided a comprehensive, plain-English, and patient introduction to 32-bit x86 assembly for...

Customer Reviews

4 ratings

A Note From the Author

Well, after four years of reading these reviews, I thought I'd put in my two cents. One recurring theme you see in all of these reviews is the following: if someone already knows assembly language, they tend to dislike the use of HLA as the teaching vehicle for learning assembly language. On the other hand, if they're a newcomer to assembly language, they tend to like the approach that Art of Assembly uses. Quite frankly, I wrote "Art of Assembly Language" (AoA) for this latter category, not for those who already know assembly language, so I am rather gratified by the response from those who are actually using AoA to learn assembly language. When someone sets down to write a book on x86 assembly language, one of the first decisions they have to make is "which assembly language syntax do I use?" The x86 is blessed/cursed with literally *dozens* of different assembly language syntaxes. No matter *what* assembly language syntax I chose, there would have been someone complaining about it. If I'd gone with GNU's as (gas), there would have been complaints about the syntax. Had I gone with FASM, the NASM crowd would have been put off. Probably the "safe" choice would have been to go with MASM (which the earlier, 16-bit version of the book, used). No doubt, many of the complaints about how I used HLA instead of a different assembly language syntax would have gone away had I done this. The funny part is that MASM is *also* a high-level assembler, having almost all the same high-level control constructs found in HLA. The same is true, by the way, for Borland's Turbo Assembler (TASM). From a language feature point of view, there really isn't much difference between the high-level facilities of MASM, TASM, and HLA. Maybe it's just the name that freaks people out. Some reviewers have commented that this is the wrong way to teach assembly language. Well, having taught assembly language at the University level for over 10 years, I must respectfully disagree. I've used HLA (before AoA was available) and the students did *far* better in the course. They got much farther along because they were able to apply their HLL programming knowledge to problems early in the course. By the time the course covered the low-level machine instructions, they were doing quite well. The courses I taught with HLA worked *much* better than the comparable courses I taught with MASM. The bottom line is that this teachnique technique has been classroom and laboratory tested. Interested individuals might want to check out my white paper on this subject: I will make the following observation about AoA: if you already know assembly language, you're probably not going to like the presentation because it's completely different from the way *you* learned assembly and most people seem to think that the only way to learn something is the same way they learned it. On the other hand, if you don't know assembly language and you want to learn it, pay particular attention to those reviews

Well Thought Out, Easy to Understand, and Comprehensive

Mr. Hyde has created what has to be the most comprehensive treatment of 32-bit Pentium assembly language ever written. This book not only covers all the usual machine instructions one expects to find in a book of this type, but it also covers topics rarely found in other assembly language books, including file I/O, object-oriented programming in assembly, and advanced procedures and parameter passing. Another interesting feature is that this book covers the Intel MMX and FPU instruction sets -- a topic not often found in assembly language books even though these special instructions are among the main reasons for using assembly language in the first place.The high-level assembler that this book uses is a very interesting piece of software. It actually solves one of the biggest problems with writing assembly code -- reading the result when you're done writing the code. The high-level assembler allows you to write some of the cleanest assembly code ever written. The examples in the book are a shining example of this assembler's capability (compare this code against the typical stuff you'll find on the internet and you'll immediately see the quality of this code).The high-level assembler also includes a massive set of library routines. This library package alone is worth the price of the book. Indeed, I've purchased library packages for other assemblers that didn't come close to what this package provides. Amazingly enough, Mr. Hyde provides this library and its source code, completely free of charge and royalty-free (he has put it in the public domain).Assembly language has always been hard to learn and hard to use. Assembly code has come under considerable criticism for being difficult to maintain. The Art of Assembly Language's presentation of this programming language, along with the high-level assembler provided with this book, is going to change this perception. This book proves that assembly can be easy to learn, you can write readable programs in assembly, and assembly can be easy to maintain.My only complaint with this book is that I wish it were available when I had to learn assembly language five years ago.

Get this book!

A year ago I grabbed a copy of Jeff Duntemann's Assembly Step By Step book. I was very disappointed with the fact that his book concentrated on 16-bit DOS programming and, frankly, didn't teach very much assembly language. I'd heard of Randall Hyde, anyone who wants to study assembly and searches on the internet for information on assembly has heard of this guy. He has quite a reputation as an "assembly guru". So I got a copy of The Art of Assembly Language. The thing I like about The Art of Assembly is that it gets you programming right away. I don't want to read a couple hundred pages before I can do anything useful. This book concentrates on writing console applications in assembly language. The advantage to this approach is that console apps are easy to write and are portable between Windows and Linux ('portable assembly'! Who woulda thunk that?) At first I was disappointed that this book doesn't cover graphics under Windows. However, the CD-ROM that accompanies the text contains several hundred additional pages of documentation (in PDF and HTML form) that talks about Windows programming in assembly language; the author's web site contains even more information about Windows programming. As that material is a bit complex and lengthy (almost as many pages as the 900+ pages in The Art of Assembly Language) I can understand why it didn't appear in this book in the first place.If you've got Assembly Step By Step by Jeff Duntemann, you'll definitely want to get a copy of this book. It's a great follow-on book to Assembly Step by Step. If you don't have Assembly Step By Step, I'd recommend going straight to The Art of Assembly Language, it covers lots more material, the information density is higher, and the signal to noise ratio is higher. Duntemann claims his book is for beginners who don't know any programming languages at all, whereas The Art of Assembly expects the reader to know at least one high-level programming language. So if you're trying to learn assembly language as your first programming language, you might want to choose Assembly Step By Step; on the other hand, if you already know a high-level language like C or Visual Basic, you'd probably do better with The Art of Assembly Language.

If you're a beginner, you'll LOVE this book

I first learned assembly language programming with the 16-bit edition of this book found on the internet. So naturally, I rushed out and bought the hard copy when it became available. My first thought was that "this is not the assembly language I'm used to." This book uses a new type of assembler, a High Level Assembler, for all of the examples. At first, I was completely put off by this approach - it was completely foreign to me. But then I realized that this book was not meant for people like myself who have been programming in assembly for years, instead it was created for people who know a high level language and want to learn assembly. Once I realized this, I began to see this book in a whole different light. The organization is perfect for someone who has a high level language background and is learning assembly for the first time. Although "old-timers" such as myself probably won't find this approach to their liking, I heartily recommend this book to anyone who is learning assembly language for the first time. While I do not have the perspective of learning assembly language using HLA, I am convinced that the author is correct that this is a good approach for beginners approaching the language.
Copyright © 2024 Thriftbooks.com Terms of Use | Privacy Policy | Do Not Sell/Share My Personal Information | Cookie Policy | Cookie Preferences | Accessibility Statement
ThriftBooks® and the ThriftBooks® logo are registered trademarks of Thrift Books Global, LLC
GoDaddy Verified and Secured