Hacker News new | past | comments | ask | show | jobs | submit login

This is a wrong statement on so many levels: "By learning C, you can learn how computers work". I am glad you did write an article but honestly you did not have to go to this length to explain your case. Anyone who says that learning C is a prereq. for understanding Computer architecture then my friend the advice is not coming from a right place. One reason I can think of is why author got confused is because a lot of freshman courses use C programming language in order to explain the computer architecture.

e.g. http://www.ece.utexas.edu/undergraduate/courses/306 use this textbook: https://www.amazon.com/Introduction-Computing-Systems-Gates-...

This course starts with assembly language and then use C as the first programming language in order to understand computer architecture. C is the de-facto language when it comes to teaching embedded systems (think limited HW resources like memory etc).

Learn Assembly to learn how computer works!

You don't need to learn assembly to learn how computer works(if you mean comp. arch). Assembly is already very high level language and hides most of the things that you learn by actually studying computer architecture. Reading the intel's first couple volumes of manual is a good idea, if you don't know where to start.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact