• Some users have recently had their accounts hijacked. It seems that the now defunct EVGA forums might have compromised your password there and seems many are using the same PW here. We would suggest you UPDATE YOUR PASSWORD and TURN ON 2FA for your account here to further secure it. None of the compromised accounts had 2FA turned on.
    Once you have enabled 2FA, your account will be updated soon to show a badge, letting other members know that you use 2FA to protect your account. This should be beneficial for everyone that uses FSFT.

Learning computer hardware, where to start?

Fergal

n00b
Joined
Apr 11, 2017
Messages
7
I do some computer programming and web development. When learning how to use new software or a programming language, I find it frustrating that I don't understand how it actually works with the computer hardware.

Do you have any suggestions, short course or book recommendations, for learning about computer hardware and how software actually works with and interacts with computer hardware?

E.g. should I start learning basic electronics, assembly language or something else?

Would playing around with something like a Raspberry Pi or Arduino be helpful?

Thanks!
 
Last edited:
I do some computer programming and web development. When learning how to use new software or a programming language, I find it frustrating that I don't understand how it actually works with the computer hardware.

Do you have any suggestions, short course or book recommendations, for learning about computer hardware and how software actually works with and interacts with computer hardware?

E.g. should I start learning basic electronics, assembly language or something else?

Would playing around with something like a Raspberry Pi or Arduino be helpful?

Thanks!

That's a very good question. You need to learn basically what a computer engineering student has to learn: check out their syllabus looks like and see what they have to learn.

You can start with this book: https://www.amazon.com/Computer-Organization-Design-MIPS-Fifth/dp/0124077269 and see where you need to reinforce some topics. This is interesting I'll have to read it myself.
 
As an Amazon Associate, HardForum may earn from qualifying purchases.
Thanks very much for your reply Michael, that seems like a very interesting book, will take a look at that.
 
  1. Step 1: The Motherboard. Your motherboard is the central nervous system of your computer. ...
  2. Step 2: CPU and cooling. Your CPU (Central processing unit, or processor) is the brain of the computer. ...
  3. Step 3: RAM. ...
  4. Step 4: Drivers. . All these individually you need to start studying their functions. Then you get started.
 
The linked book should be fine,. I used an earlier version of that back in the 90s. But here's a quick overview.

Your CPU is just a super-powerful calculator, with the added ability to do logical tests on those numbers. The rest of the system handles getting data in and out of that CPU.

We create programs to take advantage of that, to do work for us much faster than we could do it ourselves. A program usually does three things:

1. executes itself.
2. accesses and modifies your data, based on logical tests it performs on that data.
3. interact with the world, to tell us what it's doing. This can range from network connections, to a GUI, to an immersive simulation like a 3D game. Computers programs are mostly useless if they don't interact.

An operating system like Windows, OS X or Linux makes it vastly easier for programs to do what they do, and to interact with other programs and hardware.
 
Last edited:
Thanks creatve123 and whateverer for your replies, those are helpful and give some ideas for the direction to go in.
 
Back
Top