Book Recommendation? - How computers / processors work

Click For Summary
SUMMARY

The discussion centers on recommendations for books that explain the relationship between simple circuits, processors, and high-level programming. Participants suggest resources that bridge the gap between basic electronics and computer architecture. Notable recommendations include "Computer Organization and Design, Fourth Edition: The Hardware/Software Interface" and an introduction to microcontrollers. The conversation emphasizes the importance of understanding assembly programming and microcontroller architecture for a deeper grasp of how software interacts with hardware.

PREREQUISITES
  • Basic knowledge of programming in C
  • Understanding of simple electronics, including circuits and transistors
  • Familiarity with operating systems and compilation principles
  • Interest in microcontrollers and assembly programming
NEXT STEPS
  • Study "Computer Organization and Design, Fourth Edition: The Hardware/Software Interface"
  • Learn about microcontrollers, specifically the PIC architecture
  • Explore assembly programming techniques for embedded systems
  • Research computer architecture textbooks for advanced insights
USEFUL FOR

This discussion is beneficial for physics graduate students, computer science enthusiasts, and anyone seeking to deepen their understanding of how hardware and software interact at a fundamental level.

zhermes
Messages
1,253
Reaction score
3
Book Recommendation? -- How computers / processors work

I'm familiar with basic, high-level programming (e.g. C) and the principles behind compilation, operating systems, etc. I'm also familiar with the basics simple electronics, e.g. circuits, transistors, simple logic gates, etc.

The space between these levels is a complete mystery; a magical black-box.

Does anyone have a book recommendation to fill in this (massive) gap?

I'd like to understand how simple circuits are built into processors, processors into computers, and perhaps how the high-level software code is translated into lower-level hardware-minded code.

I'm a physics graduate student, so I think I can handle a good amount of technical language and detail -- but perhaps not a full EE or CE level of it.

Thanks for your recommendations!
 
Physics news on Phys.org


I'd recommend a good intro to microcontrollers or intro to assembly programming textbook. The abstraction starts disappearing when you have to figure out what register / memory location you have to shove bits into in order to perform various tasks--and when you end up banging your head against the wall trying to debug an innocuous-tiny looking program.

Unfortunately, I have to leave these generic, since I don't have any specific ones (when I was learning, I used Harman's The Motorola MC68332 Microcontroller: Product Design, Assembly language Programming and Interfacing. It's nearly 20 years old, but the 332 (and it's descendants) live on today, powering a great number of embedded electronic devices.
 


Studying basic microcontrollers like PIC etc will give you initial insight to the topic. Afterwards pick any computer architecture book for more information
 

Similar threads

  • · Replies 6 ·
Replies
6
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 12 ·
Replies
12
Views
2K
  • · Replies 20 ·
Replies
20
Views
6K
  • · Replies 5 ·
Replies
5
Views
4K
  • · Replies 1 ·
Replies
1
Views
1K
  • · Replies 6 ·
Replies
6
Views
3K
  • · Replies 2 ·
Replies
2
Views
2K