Settings

Theme

Ask HN: Good books to learn more about computer architecture?

22 points by psycovic23 16 years ago · 10 comments · 1 min read


Hey all,

I was wondering if anyone could suggest a good book about computer architecture. I program small-scale stuff on my own, but never had to learn any of the details about what C++ actually does (which interviewers seem to love asking) or what's going on past the programming part.

timf 16 years ago

If you want to get into architecture in its own right, Hennessy/Patterson. But I think a far better book on the subject for programmers is "Computer Systems: A Programmer's Perspective."

This is a textbook out of Carnegie Mellon that I was exposed to in grad school. It goes into all kinds of details of processor architecture, memory, I/O, assembly programming, etc. while staying focused on its audience of a systems programmer in C. It's wonderful.

http://www.amazon.com/Computer-Systems-Programmers-Perspecti...

UrLicht 16 years ago

A little known gem: The Elements of Computing Systems

http://www.amazon.com/Elements-Computing-Systems-Building-Pr...

This book takes you from logic gates to writing your own (extremely simple) virtual machine, programming language, etc. It's a bit fast paced and project based, but it'll run you through a very high level overview of the whole gamut.

kabdib 16 years ago

John Paul Shen's _Modern Processor Design_ is my current favorite. It covers the design of recent (and also some historic) processor architectures, including pipelining, cache and memory systems, superscalar, and so on. Some concrete examples are given (e.g., PowerPC, x86).

drallison 16 years ago

Looks like you are asking two questions. "How does C++ get mapped onto real machines (and operating systems)?" and "How do machines really work?".

You might want to look at Yale Patt's book which begins from the bottom (gates and assembly language) and works up. http://www.amazon.com/s?ie=UTF8&rh=i%3Astripbooks%2Cp_27...

j_baker 16 years ago

I may be being pedantic, but are you wanting to learn about systems architecture or learn about the internals of C++? Because those are two completely separate questions.

deppp 16 years ago

You may want to read "CODE" by Charles Petzold

  • hga 16 years ago

    http://www.amazon.com/Code-Language-Computer-Hardware-Softwa..., it's a "general interest non-fiction" book with lots of historical stuff, e.g. coverage of the 8080 and 6500.

    I can't find it now, but it reminds me of a MIT Press book for the educated layman that covered electronics, the various generations of semi-conductors (and how at that period TI was the only company to negotiate all of them, this was written at the dawn of the LSI or VLSI era), the critical details of wafer yield and resultant profitability, etc.

    Perhaps not the right book for the original poster, but for many people it could be very useful.

paulbaumgart 16 years ago

http://www.amazon.com/s/qid=1272228099/ref=sr_gnr_aps?search...

azrealus 16 years ago

good book about the memory: http://www.amazon.com/Memory-Programming-Concept-Frantisek-F...

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection