Learning computer architecture to improve programming skill?

hi everyone, i'm a newbie in this forum but i've learned c++ for about 10 months

i noticed that a programmer not only have to understand the programming language or algorithm well in order to create a good application (efficient like fast) even though the main thing a programmer should learn are algorithm, mathematics and the programming language itself

and also, some tutorials explained about machine process like half word, full word etc, but i don't really get them and i can't really find a good tutorial about them. But so far i understand about how computer read a byte using a bit pattern (ASCII code) etc even though i don't get them in detail

so what should i learn or read about hardware process that is related and important to programming?

i'm really interested and curious about the detail of how the computer read the bytes of application from the hardisk and execute the program....

oh yeah, there is this computer architecture course in my campus.... isn't this course should be the one i'm looking for?

thanks....

isn't this course should be the one i'm looking for?


i dont even know on which continent that university is, how should i know what that course is about and if it's worth it or not. just go there a few times and then decide if you like it or not.
As a programmer, you need to consider the hardware, but mostly at a very high level.

Of course it depends upon what sort of programming tasks you want to undertake. But all the real interacting with the hardware tends to take place using library code, for example disk I/O uses the C and C++ standard libraries, which in turn interact with the operating system.

Similarly with graphics, there are libraries which handle that stuff too.

If you study the machine architecture in detail, you may find that is more information than you need. It may still be beneficial, background knowledge does help you see where things fit in the bigger picture.
If you want a good tutorial on x86 Assembly and how it relates to certain parts of C and C++:
http://www.drpaulcarter.com/pcasm/
Topic archived. No new replies allowed.