在开始前我有一些资料,是我根据网友给的问题精心整理了一份「C语言的资料从专业入门到高级教程」,
点个关注在评论区回复"888"之后私信回复"888",全部无偿共享给大家!!!
没有一本书或者几本书能把这整套东西讲清楚的。
如果非要找的话,那么整个计算机专业的本科的全部课程可以把这些东西全讲一遍 。全凭个人兴趣的话,那么需要非常非常漫长的时间才能搞清楚全部。而且这其中有大量的实践性的内容,软件的还好,硬件的难道要自己从门电路开始做起?需要付出的成本太高了。
个人学习的话,不建议从底层开始学起,因为底层的东西是非常无聊的,而且实际应用中也真的很难用得上。
如果按照题主的需求,那么学习次序是:
-
基础数学和基础物理
-
++模拟电路++ + 微积分
-
数字电路 + 离散数学
-
汇编语言 + 计算机组成原理与接口技术
-
操作系统(理论)+ ++算法导论++
-
C语言 + 编译原理(选)
-
嵌入式系统(实践) 或 操作系统(实践)
但实际教学中,C语言可能比模电或者操作系统要早一些学,因为空泛的操作系统、模电是非常不直观的,学了也不知道有什么意义,C语言是看得见摸得着的东西。
数字电路的逻辑性更强一些。如果只是看书,仍然不合适,++数字电路++要专门配合相关的实验,比如用74电路做一个加法器,这样会很直观的理解数字电路的逻辑。
对实验要求更高的是计算机组成原理和接口技术,类似于:一个++加法器++ 怎么变成一个CPU的?CPU里的微指令到底是怎么构造出来的?操作一个IO总线,怎么反应到硬件信号上的。这些需要对应的开发板,有些开发板很贵的。