Rating: Summary: Assembly Language for Intel-Based Computers, 4th Ed. Review: This is a review for the Fourth Edition of Assembly Language for Intel-Based Computers by Kip Irvine. This book has just been released. I teach Assembly Language at a community college, and have used the third edition with much success. Matter of fact, I was so impressed by it that when Dr. Irvine asked if any of the current teachers who'd registered at his site wanted to review the fourth edition, which was still being written, I volunteered. The fourth edition is an organizational improvement on an already well-written book. The first nine chapters cover what I need to teach for an introduction to Assembly Language, required by Computer Science departments for a major in that field. Engineering programs can teach introductory hardware using it as well, with the emphasis on different chapters. The book starts with basic concepts of data representation and number-base conversions and moves on to the Intel IA-32 processor architecture. By the time we start to actually discuss Assembly Language in Chapter 3, the student understands why Assembly works the way it does. That's no small feat. Unlike many Computer Science books purported to be for beginners, this one really is written for students near the beginning of their studies. It's aimed at those who have taken maybe one previous programming class. Dr. Irvine has a knack for reducing a very complex topic to its elements and explaining those elements so they're easily understood. It's possible to learn Assembly Language using this book alone, not taking a formal class, even though the text isn't really designed to be a Teach Yourself program. Assembly Language is a rather difficult topic, so the student would have to be very motivated. Instead of having a series of review questions at the ends of the chapters, this book has section reviews. This focuses the student on what was just read, reinforcing a smaller amount of data, so it sticks more easily. Students have access to answers to odd-numbered questions. For teachers who prefer to have students look in the textbook for the answers, the even-numbered questions cover material similar to what's asked by the odds. There are programming exercises at the ends of chapters, too. The author maintains a web site for the book. There are sections for students who use the book and parts just for teachers. Odd-numbered problem answers are on the students' site. Security is maintained at the teachers' site. When I logged in, I found sample tests, PowerPoint presentations, and FAQ's, to name but some of it. Rather than describe the contents of the book further, I'll give you the author's website. He has the complete table of contents posted, as well as a few sample chapters. Take a look for yourself. [URL]. I'm going to enjoy teaching from the Fourth Edition of Assembly Language for Intel-Based Computers. I feel like I have a well-organized book that covers what I have to teach, so I don't need to design my course around several textbooks. There's plenty of supplemental material on the website, which saves me lots of my most precious commodity - time.
Rating: Summary: Heavy On DOS, But Still A Good Starter Book Review: This is a good starter book, but recognize that it focuses on DOS and does not "thoroughly cover assembly language for Intel-based computers" as the back jacket claims. No reasonably-sized book could do that. The book description states that it is "Designed for students and professionals interested in learning the basics of operating systems and architecture in the context of a microprocessor." Although the book covers some of the critical topics necessary for operating systems programming on the Intel Architecture, e.g. I/O, segmentation, interrupts, it fails to do so adequately, and it omits discussion of protection, paging, and privileged mode instructions, to name three among many. I grant that you could learn enough to understand the basics of real-mode DOS, but not any of the Windows flavors, OS/2, nor the varieties of Minix/Linux. That being said, it *is* a good book to learn Intel assembly from, and if you want to do OS programming then get the manuals from Intel's web site (downloadable in .pdf form). You may still find the DOS focus distracting, but you'll have everything you need. ... and don't think you'll find it all in one book. Intel's manuals alone are over 1500 pages.
Rating: Summary: Good book for Assembler beginners Review: Very robust examples, clear explanations, this makes it good for beginners. Some of the things that surprised me is his use of the i586 architecture. This is good for people who need to use semi-modern assembler code. That is, 586 is the architecture for Pentium (P54C), Pentium MMX (P55C), and all iterations above the Pentium line are able to read 586 code (difference is only in architecture, not necessarily language). Anyhoo, the book starts off with the basics: radix conversions, boolean logic, and then it goes into the assembler itself. It covers MASM (Microsoft ASM), so it's typically for Windows, if you're using Gnu ASM, you're out of luck. It's a good book to get a feel for assmbly language, if you're wanting to write ASM programs that tap into MMX, this book covers it as well.
Rating: Summary: Overcomplicated for the intro book; no debugger coverage Review: A bad, overcomplicated and dull college textbook used in many colleges for the assembler class. Pretty boring and uninspired coverage typical of many college textbooks. It might be suitable as a reference but never as a textbook: the author has no abilities at all in distinguishing between important and unimportant material as well as material suitable and unsuitable for the intro course. For self-education I would recommend using old John Socha's book Assembly Language for the PC instead (it covers only real mode but this is OK for the introduction) or Assembly Language Step-By-Step Programming With DOS and Linux. The only good thing about this book is that the CD ROM included with the book contains MASM 6.15. Again, the most bad thing about the book is that the author fails to distinguish between really important and redundant information and overload the book with an extra material. His approach is to add some predefined routines to assembler to make it more like a high level language. But at the same time he converts the language into a variant of C++: obscure mass of unnecessary details that overwhelm almost all novices. Without help of the debugger assembler is almost incomprehensible. IMHO for most students, especially for community college student for whom the book was originally written might passionately hate of assembler for the rest of their lives. So it does not surprise me that out of 17 chapters the author did found space to cover the debugger. He is too preoccupied with obscuring things that with making them simple. Actually CodeView in included on the disk and can be used for debugging the programs in 8086 mode: again I would like to stress that using the debugger is the only right way to learn assembler. Thus this is not a shortcoming, this is a real blunder and that's why I give then book only two stars: in my opinion this makes book really harmful book as it discredits the idea of assembler as an important language for any computer science student. If you want to compensate for this shortcoming it might be not easy as additional subroutines make finding the actual code not that easy. But you can use some tricks marking the start of the code with a special sequence of commands and then finding them. There are several debuggers for 32-bit mode as well. As author himself noted on the CD ROM: For 32-bit Protected mode programming, two excellent debuggers you can use are: - Microsoft Visual C++ Debugger - This is an integral part of Microsoft Visual Studio. Look for a tutorial on our book's Web page that shows how to set up and use this debugger. - Microsoft WinDbg Debugger - This is a stand-alone debugging utility that can be used to debug both user-mode programs and kernel-mode programs (such as device drivers). At the current time, this debugger can be downloaded for free from Microsoft's Debugging Tools for Windows web page. If this link becomes inactive, check our book's Web site for an updated URL. There is an author website for the book. The first three chapters are available online.
Rating: Summary: Definitely useful book Review: There is not such thing as "all-in-one" book. This book is not exception. But you will enjoy it, thanks to the author. For pretty coding style, for IA-32 protected mode examples, for high-level assembly features introduced and more. Not at last, the book is well organized textbook and suitable for intermediate level assembly and computer architecture courses. You can begin develop your own protected mode assembly code with this book and Negatory Assembly Studio as well in hands.
Rating: Summary: Great introduction to assembly Review: A very competent introduction to assembly programming, regardless of the platform, but great because it can probably be used with your personal computer. After a quick install off the included CD, you'll be coding and assembling your own programs in no time. A background with digital systems is helpful - I am a computer engineering student, and I was already more than familiar with two's complement, AND, OR, and other logical operations. These topics, working with binary, are essential to assembly. However, though the book uses them a lot, it also explains them at the beginning, so pay attention. It's very interesting all the Windows-specific things it covers: the author doesn't neglect the fact that Microsoft's assembler is by far the most used PC assembler out there, and goes into lots of MASM-specific topics. What's great, however, is that amongst the platform-specific ideas are general ideas that will work well in any assembly situation; that's an advantage of assembly, that it's so low-level it's very similar on different platforms. I took an embedded systems class after taking the class that used this book. I felt very confident in my assembly ability, even though the embedded systems class was not using Intel processors, but PIC processors from Microchip. By the way... I wonder if most textbooks are rated according to a student's experience in the class. Did the guy who rate this book down very low simply have a bad teacher who was really hard on his class, and then looked for problems with the book? Personally, I didn't find the lack of a debugger that bad, since I was understanding assembly pretty quickly right off the bat thanks to this book and my teacher's clear explanations.
Rating: Summary: Fantastic book!!!! Review: I don't understand the previous reviewer's criticism, because I felt this book was really easy to read, and hit all the major topics that I wanted to learn. I read the whole thing cover to cover in one day. Assembly language is for the hardcore who either really want to know how the machine works, or for those who really need to optimize their code (like wannabe game programmers). To really understand Assembly, you need to already be a good programer in a high level language, and you need to know a little bit about computer hardware/software architecture (virtual memory, paging, segments). It also doesn't hurt to know a little about compiler construction. Those are all major topics in themselves, and cannot be fully explained to novices in one book. Gotta learn the fundamentals first. Anyone with a decent technical background should agree this book is a surprisingly painless and thorough introduction to a normally tedious topic.
Rating: Summary: Carefully organized, with helpful examples. Review: I am a computer engineering student at the University of Illinois at Urbana-Champaign and was a little skeptical of the high price at first and the fact that Kip Irvine has the readers use his library of functions throughout the book (I felt I would learn fewer details). However, after already reading about half of this book, I can say for certain that using Mr. Irvine's code library really does aid the learning process by helping the reader/programmer focus on what's really important early on in the study of assembly language. Also, he eventually does explain how his own functions work, so we are definitely not cheated of the details. I also love the relevance and vast number of the book's actual code examples. I previously bought "Assembly Language Step-by step" by Jeff Duntemann and, after reading the entire DOS section, still did not feel that I could really code in assembly language. That isn't the case with this book. The chapters, and each chapter's code examples, are carefully organized and well explained, and doing the programming exercises at the end of each chapter really helps. As for the $85 price tag...well, it's supposed to be a college textbook, after all. So, with all its clarity and information, just feel lucky it's not over $100, as many of my *unhelpful* textbooks are. By the way, it helps to know and understand decimal/binary/hexadecimal numbers (topics such as "2's complement") beforehand, since they are all used so often in assembly coding. If not, that's fine. The earlier material just might take a little more time.
Rating: Summary: excellent guide for enginners Review: This book is an excellent guide for software and hardware engineers who would like to learn assembly language of intel processor at an academic book style,it covers many subjects related to own assembly programming,ms-dos concepts,16 bit and 32 bit programming,modular programming with creation of high level language interfaces and very detailed string handling with file i/o at any levels. And more importantly its examples are very good. Covers almost every aspect of the assembly and the processor. It is a MUST for profession on assembly.
Rating: Summary: windows only Review: this parochial book only covers assembly programming under microsoft windows. if you use linux and the gnu tools, the book will not be very useful.
|