ACCU Home page ACCU Conference Page
Search Contact us ACCU at Flickr ACCU at GitHib ACCU at Facebook ACCU at Linked-in ACCU at Twitter Skip Navigation

Search in Book Reviews

The ACCU passes on review copies of computer books to its members for them to review. The result is a large, high quality collection of book reviews by programmers, for programmers. Currently there are 1949 reviews in the database and more every month.
Search is a simple string search in either book title or book author. The full text search is a search of the text of the review.
    View all alphabetically
PC Architecture from Assembly Language to C
0 13 653775 8
Prentice Hall
280pp+2 disks
J Crickett
assembler; internals and hardware
Appeared in:
I found myself wanting to explain one or two things to the authors after reading just the first few pages of this book. Chapter one is an introduction to PC architecture. Unfortunately this chapter contains some errors that are perhaps merely oversimplifications, such as claiming that all PCs contain Intel CPUs. The rest of the introduction covers basicbinary maths, followed by an example architecture in chapter two. Sadly the author neglects to cover the fundamental aspects of modern superscalar architectures, pipelining, branch prediction or the fact that from the Pentium onwards the Intel chips have had parallel U and V pipelines, to name but a few.

The next few chapters on the other hand provide quite a good introduction to assembler programming on the x86 and derivative architectures. My only criticism of this section is the sole use of MASM, which is a commercial package, whereas for a book published in 1998 there where freeware assemblers available, one of which should have been on the included floppy discs.

Skipping to the final chapters of the book the authors go to great length explaining how assembler is faster than C, yet not pointing out that one should always check one's algorithms first, never mind the fact that in today's time of superscaler, pipelined architectures compilers are getting better and better, while it is getting harder and harder to hand optimise assembler. A less important issue is perhaps the fact that the C code is K&R based, not ISO and littered with things the members of comp.lang.c would crucify one for.

In conclusion I'll probably make space for it on my bookshelf as the Appendixes are fairly reasonable reference sections; however I hope no one does as they suggest and uses it to teach PC architecture.