Computer Organization and Design: The Hardware/Software Interface. Third Edition, Revised Reviews



Amazon.com Customer Reviews

Horrible Book - Review written on December 12, 2007
*
Rating: 1 out of 5
5 customers found this review helpful, 1 did not.

The main problem with this book is that many details are omitted, yet show up in illustrations, examples and problems in the back of the book. Nowhere are these concepts explained, just used.

The writing is dry, which could be forgiven if this were a quality book.

The sections on SPIM do not even come close to showing enough so the reader could actually use it effectively.

Many of the diagrams are too cluttered to be of any use whatsoever.

I would elaborate and write about specific instances of these problems but I have already put more effort into this review as the authors did for the entire book.
Not a very good textbook - Review written on September 17, 2007
*
Rating: 1 out of 5
2 customers found this review helpful, 2 did not.

The examples are cheesy and the author assumes the reader knows more than what the user has to know in a college course at this level. But if you're already knowedgable of this stuff, this can make, probably a descent reference book. I'll be honest, Hennesy, the author, also wrote the computer architecture, quantitative approach book. This book is lousy. Its like their books are written for decorations. They over complicate everything. Even simple binary add examples are overly complicated, for they use 32 bit words opposed to simple 4 bit words. They're explanations on how they're deriving answers are pretty much useless are non-existence. I'm currently taking a computer architecture couse using this book, and I took the quantitative course in undergrad. Both times I have been sadly disappointed by Hennesy. Unfortunately, he's like the bible writer for these 2 courses. I hope a new more elaborate bible is written in the near future. This guy elaborates on absolutely nothing, and his visual aids are horrible.
I don't like - Review written on June 26, 2007
* * *
Rating: 3 out of 5
4 customers found this review not to be helpful.
It's good, but have a lot of errors... so i just don't like.
But it's not a bad book
Disorganized and "uncut" - Review written on February 19, 2007
* *
Rating: 2 out of 5
3 customers found this review helpful.

I had to purchase this book for a graduate school course. There is a lot of good information here. Unfortunately lengthy examples and tangents muddy it up pretty badly. Also, I think the author(s) could have safely assumed that readers are familiar with programming; maybe that perspective could have grounded and guided the chapter flow a little better.
Looking at any 1 section, the writing is good and the explanations are clear for the most part. The catch is that the book as a whole is a collection of enormous disorganized chapters; chapter 2 is almost 100 pages. This work is dire need of editing and some understanding of its intended audience.
very good but hated the topic - Review written on January 11, 2007
* * * * *
Rating: 5 out of 5
10 customers found this review not to be helpful.
goes beyond simple digital logic and into more boring technical details like the true calculation of CPU cycle run time - hated the class and my professor almost failed me - make sure you take the right professor with the college course - very time consuming and not fun at all
Good information; poor presentation - Review written on November 26, 2006
* *
Rating: 2 out of 5
12 customers found this review helpful.

The information contained in this book is sound, and the coverage of a variety of topics is relatively thorough. It is, however, difficult to appreciate these strengths given the numerous flaws in the text. Minor flaws include numerous misleading typographical errors, and too little attention to the flow of information.

The big mistake, though, is the failure to publish a complete book. If you want to learn from this book, then you will need to spend a good bit of time either sitting at a computer reading, or printing out the PDF files on the accompanying CD. The appendices (which are not extraneous, but rather a fundamental part of the text which contain information that's referred to throughout the book) are included ONLY on the accompanying CD. For more than 50% of the review exercises are just references to PDF files. The contents of the CD are not available from the publisher's web site. Do NOT buy a used copy of this book that's missing the accompanying CD. If you like taking books with you to read away from the office, don't buy this book at all. You'll spend too much effort wondering why the printer felt the need to offload a good bit of the printing work onto you. All of this is made even less tolerable by the poor information flow, which will leave you needing to make reference to the appendices many times throughout virtually all other chapters of the book.

It's possible that a future edition may fix these issues. Until then, there have to be better ways to learn.
Very useful and insight - Review written on October 27, 2006
* * * * *
Rating: 5 out of 5
3 customers found this review not to be helpful.
I took a verilog class that required writing a microprocessor in verilog as a final project. (I also need to create a binary to run on it to prove that it works) I borrowed the 2nd edition of this book from a friend and amazed by how much I learnt from reading only 1 chapter of it. I can finish the microprocessor project in 2 weeks with the help of this book. I am a full-time worker and took the class as part-time. I bought the 3rd edition this January and read it just for fun. This is October and I have 10 more pages to finish the book. It is that good.
Informative but steep learning curve - Review written on September 15, 2006
* * * *
Rating: 4 out of 5
3 customers found this review helpful, 1 did not.

I needed this book for a class, but had not taken assembler yet. by halfway through the course I was so very very lost, I had to drop the class. Well I took Assembler and then retook the class and everything was crystal clear. Do yourself a favor and learn assembler (self or class) before you take computer architecture (or whatever uses this book) or you'll have a much harder time. That being said once you have an idea what's going on this is a very informative book.
Well Written - Review written on August 17, 2006
* * * * *
Rating: 5 out of 5
1 customer found this review helpful, 2 did not.

I used this textbook for a computer architecture course, and found it to be extremely well-written, clear, and fun to read. It contains a wealth of information, from a review of logic design to advanced topics such as pipelining. Every component is explained down to the level of gates and flip-flops, leaving no "black boxes," and allowing the reader to thoroughly understand the material.

The book also uses a number of good analogies; for example, memory is compared to books in a library, and pipelining to doing laundry. The pedagogy is excellent.
A Miserable Excuse for a Textbook - Review written on April 30, 2006
*
Rating: 1 out of 5
10 customers found this review helpful, 6 did not.

Some reviewers rave about the content of this book, I don't know why. It presents all of its topics at such a highlevel it's almost useless. The authors of this book try to fill some kind of weird intermediate state between a digital logic course and a processor implementation course and fail miserably. The book has not enough detail for either.

The cd-rom, faithfully following the trend of academic textbooks in the US for the past decade, is also completely useless. The most notable things on the cd-rom are: several sections and a chapter from the book, not included in the text, in pdf, and, wait for it... the SPIM mips emulator. Wow, now that is some valuable content [/sarcasm].

Any textbook that doesn't provide answers to the exercise problems deservers a zero in my opinion. I would've given this book a zero, amazon wouldn't let me.

You may be wondering, did I have this book in a course? Did I fail, is that why I'm so bitter? No, I made an A actually, but I sure didn't learn much from this book.
A Miserable Excuse for a Textbook - Review written on April 30, 2006
*
Rating: 1 out of 5
10 customers found this review helpful, 6 did not.

Some reviewers rave about the content of this book, I don't know why. It presents all of its topics at such a highlevel it's almost useless. The authors of this book try to fill some kind of weird intermediate state between a digital logic course and a processor implementation course and fail miserably. The book has not enough detail for either.

The cd-rom, faithfully following the trend of academic textbooks in the US for the past decade, is also completely useless. The most notable things on the cd-rom are: several sections and a chapter from the book, not included in the text, in pdf, and, wait for it... the SPIM mips emulator. Wow, now that is some valuable content [/sarcasm].

Any textbook that doesn't provide answers to the exercise problems deservers a zero in my opinion. I would've given this book a zero, amazon wouldn't let me.

You may be wondering, did I have this book in a course? Did I fail, is that why I'm so bitter? No, I made an A actually, but I sure didn't learn much from this book.
Great Book - Review written on March 27, 2006
* * * * *
Rating: 5 out of 5
1 customer found this review helpful, 7 did not.

This textbook is the only reason I passed my Computer Organization class. The chapters can be read out of order or just for reference as I have been doing recently while taking a Computer Architecture class.

I highly recommend this book to anyone in Computer Engineering
Not very good as a textbook, OK as a reference book - Review written on March 26, 2006
* *
Rating: 2 out of 5
5 customers found this review helpful, 12 did not.

This book is a relatively generous two stars. I have been using this book for a college class and find it to be very poor. The material is not very well-organized. The explanations are often confusing and are generally not very thorough. There are not nearly enough examples, and they are not very helpful when they are there. They put a lot of the book on the CD, which is very annoying. The questions are not very good; they are often confusing or poorly worded and they sometimes cover stuff that is not explained well in the book.

What this book has been useful for, though, is a reference book. I keep it sitting on my desk at work (I am a computer programmer) and refer back to it now and then, especially for MIPS stuff. It is OK as a reference book, which is why I did not rate it 1 star.

In short, I wouldn't recommend trying to learn this material for the first time from this book, as you will probably find the book confusing. However, it may be of some value as a reference, particularly for MIPS architecture and assembly programming.
Terrible book - Review written on March 23, 2006
*
Rating: 1 out of 5
8 customers found this review helpful, 4 did not.

This book was used as the primary book for my last college class. The material is poorly laid out and very difficult to follow. Unless you are in your last year of CS or a Engineering student, do not buy this book. I even emailed one of the author's of the book to see if there was any other material available to help better understand the text, and his answer to me was, "you can buy the Advanced book." What a joke.
Awesome Textbook - Review written on February 27, 2006
* * * * *
Rating: 5 out of 5
1 customer found this review helpful, 1 did not.

This textbook is up-to-date and awesome. The material it covers is conveyed in such a way that it is easy to underestand. The book chapeters can be read in any order as long as a basic understanding of the material exists. Definitely would recommend this textbook.
Review - Review written on February 25, 2006
* * *
Rating: 3 out of 5

Questions at the end of chapter are hard to understand sometimes. Wording is a bit confusing.
Great book - Review written on February 21, 2006
* * * * *
Rating: 5 out of 5

This book starts out a little too simple but it quickly picks up pace to a more appropriate level. This is the only book I have ever read that makes assembly code easy to read. This entire book is actually easy to read.
Excellent textbook for understanding how computers work under the hood - Review written on December 15, 2005
* * * * *
Rating: 5 out of 5
2 customers found this review helpful, 1 did not.

In particular, the chapters on pipelining and computer arithmetics are highly recommended.

As a subsequent stage, I would recommend the complimentary of this book, by the same authors - "Computer Architecture - A Quantitative Approach".
strong finite state descriptions - Review written on October 02, 2005
* * * *
Rating: 4 out of 5
2 customers found this review helpful, 1 did not.

The book strives to closely tie an understanding of source code in a high level language like C back down into its equivalent assembler formulation. The authors chose the MIPS chip as the hardware for the latter assembler.

The approach differs somewhat from the customary hardware text, which usually deals a length with circuitry and assembler. And then, maybe, at its end, it will offer some details about how higher languages get compiled down into that assembler. This text reverses the emphasis. It may address a gap in the CS/EE pedagogy.

The material can be a little involved. Especially when concerning the design of a processor. For this, the book stresses the concept of a finite state machine. It imposes a design discipline that helps debug the control steps.
Great computer science book - Review written on September 12, 2005
* * * * *
Rating: 5 out of 5
2 customers found this review helpful, 2 did not.

Using this book in my Computer Architecture & Organization class at Northeastern University in Boston. So far book is great. Really interesting and written by extremely qualified authors. Unlike most books written by authors with such resumes, this book is easy to read and doesn't go straight over the heads of most people reading it for a course. Can't wait to see what we're going to do next.
Good technical introduction to computer organization topics - Review written on March 17, 2005
* * * * *
Rating: 5 out of 5
7 customers found this review helpful, 1 did not.

I use this book as a reference in my technical writing.
I recommend this book to everyone who have a basic Assembly Language programming background and want to understand everything behind the Machine Language Operation Codes decoding process.

The authors build from scratch (and you learn from scratch):

* How to build a complete Arithmetic and Logic (ALU) Unit
- Basic Logic Gates processing
- more advanced topics as Ripple Carry

* How to build a complete Control Unit to guide the ALU Operation
- Microprogramming vs. Hardwired Control Implementation

* Assembly language examples for programming the Control Unit

It is a good Technical Book in this area.

Complement the study of this book with the Assembly Language Programming presented in the book "The Art of Computing Programming", Volume 1 by Donald Knuth (also, if you need more application examples of low level programming, review Volume 3 "Sorting and Searching"). This is a very good study track.

Best Book Out there! - Review written on January 11, 2005
* * * * *
Rating: 5 out of 5
7 customers found this review helpful, 1 did not.

If you are a computer scientist or engineer, you must have this book. This book introduces the basic and advanced principles of computing. It gives a good background on computer systems, how it works, how it performs and how to design a system. It teaches the relationship between hardware and low level sofware.
You might need to have a little background in digital design and little assembly knowlegde.

It is well organized and maintains the reader's attention. It starts with simple and advances through out the chapter. Arithmetic, performance, processor design, pipelining, memory and more advanced topics are covered and explained really well. Especially if you are missing some background in any topic, you can look in to the cd that comes with the book and it has more than enough tutorial. (MIPS, Verilog, Risc architectures etc..).


I can say that, its one of the best textbook I have ever had. If you want to advance yourself to next level after reading this book and understanding the concepts, then you should move on to "Computer Architecture: A Quantitative Approach" book by the same authors. It covers topics much more in depth.
Positioned right between hardware and software - Review written on November 19, 2004
* * * * *
Rating: 5 out of 5
9 customers found this review helpful, 4 did not.

This has become one of the standard text books, and now that it's been updated to the third edition it is even more impressive than before. It's updated to cover the Pentium 4 and has a little bit on the AMD Opteron which is making very strong inroads in the high performance clustered supercomputer business. There's also a fair amount on the MIPS processor. (One of the authors was a cofounder of MIPS.)

This book is aimed at the intersection of the true hardware types and the low level software types. As such, it's guaranteed not to be deep enough in either area to satisfy all. But to the hardware type thinking in bits and discrete logic the programming aspects will be a good help. Likewise to the software type, learning what registers really do, and what's pipelining, will be a great help.

Chapter 9, potentially the most interesting, is on clusters. This chapter is on the CD, not in the book itself.
Another Solid Text From MKP - Review written on August 22, 2004
* * * * *
Rating: 5 out of 5
3 customers found this review helpful, 12 did not.

This is good book if you are a new student or a seasoned veteran looking for a review.