Excellent introduction
|
| Review Date: October 1, 2002 |
| Reviewer: Jo Totland, Oslo, Oslo Norway |
| If you want to understand how modern computers really work, this book is an excellent choice. The book focuses on the MIPS architecture. This is unusual, in this Intel-oriented world, but in the end, the Pentium is nothing but a RISC-computer with a complicated instruction decoder. And with the understanding you get, it will be easy to transfer your knowledge to other architectures and computers. The book makes a fantastic job of explaining how micro-processors work, how virtual memory, cache-hierarchies, and pipelining affect your programs performance, how to optimize assembly code, how circuits combine to build the arithmetical logic units inside the CPU, and the issues involved in designing and programming for multiprocessor computers and clusters. If you are a computer programmer, or beginning hardware engineer student, this book is for you. A basic course in programming would be advantageous. |
Difficult read, but worth the effort.
|
| Review Date: November 18, 1999 |
| Reviewer: Chris (cr@cse.buffalo.edu), Buffalo,New York |
| This book was not an easy read for me, but if enough time is spent this book is written well enough for an assembly/hardware beginner to grasp it. I had no assembly experience and very little hardware design experience comming into this class, and using this book I was able to do very well in the class, and most importantly understand these concepts. Many people struggled(this is a CS class not EE), but most of these people simply did not put the time into reading the 100+ page chapters. Simply put the book does what its supposed to do very well if you put in the time. |
Good technical introduction to computer organization topics
|
| Review Date: March 16, 2005 |
| Reviewer: Jose Portillo, Caracas, Venezuela |
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.
|
A great book for many audiences
|
| Review Date: December 8, 2008 |
| Reviewer: John Mashey, Portola Valley, CA United States |
Iown all 4 editions of this book, plus the 4 published editions (and one preliminary edition) of the related "Computer Architecture - A Quantitative Approach".
Why?
Because, every time one of these comes out, they become clear standards. The last 20 years have been a period of rapid changes in computing. Fortunately Patterson and Hennessy somehow find time to update their books about every 5 years, not only adding new material, but also improving the pedagogy and readability for different audiences.
This book offers a thoughtful combination of printed and electronic information that potential authors should study, as this combination has evolved across the various iterations.
I especially appreciate the reader's guide (page xvii), which highlights different paths through the book for different audiences. This is very important in books that cover material comprehensively, as not everyone needs to read everything, especially the first time through.
This edition is well worth having, even if one already has the earlier ones. The additional material on multiprocessors is especially crucial, given that uniprocessor performance growth has slowed, and multiprocessor software remains challenging.
I spent many years trying to get people to write software at the highest level possible, but the otherwise-desirable trend in that direction can have one unfortunate side-effect. Some younger software designers have little or no experience with computer architecture and hardware/software interface, and it is all too easy to create performance and scalability surprises that could easily be avoided.
I'd strongly recommend this book to avoid such surprises. Even if a programmer writes in very high level languages, some knowledge of the lower levels and their pitfalls goes a long way.
I used to recommend the other book to people like technology journalists, venture capitalists, and financial analysts, i.e., people who are rarely computer professionals, but need to understand computer technology and its trends. Many such have been surprised to find the book was useful to them.
However, as Patterson and Hennessy have reworked the balance of material between the two books, the more introductory material is located here, whereas the other book is more appropriate for computer designers or software people working close to the hardware.
Hence, the next time someone needs to understand computer technology, well-explained by experts, this is the book I'd recommend. |
Best Book Out there!
|
| Review Date: January 11, 2005 |
| Reviewer: Erhan Senlik, Stony Brook University, NY USA |
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.
|
|
Leave a Reply