为了了解计算机是如何工作的,我学习了一下计算机原理(国防科技大学)的一些课程。最深的感悟是:数据的存取是程序运行中最值得关注的地方。其次,虽然当代计算机几乎都是冯·诺依曼体系,但是在生产计算机的时候,每个生产商都有自己的实现想法,即不同的指令集,使得。
针对一个具体的计算机,它的指令集决定了它实际上能做哪些工作,应该 关注;二进制语言是它运行时的微观过程,不要去管它。
有个大牛说过:编程 = 算法 + 数据结构
其中算法在形式上可以分为:
- 流程(顺序、循环、递归)(先后性)
- 运算方式(处理方式:±*/%、函数)
数据结构在语言上就是数据类型:
以上的就是编程最基础的东西。所谓最基础的东西,是所有的程序都是按照这种方式执行的。高级的概念是后面发展出来的,一定要兼容这些基础的东西。
一个程序文件,如同一个办理业务时的表单。这个表单有表头,表中的提示内容,表中待写的内容。程序的各种配置如同表头,如何操作如同提醒内容,待写的内容如同数据,各表间的关系如同不同程序间的关系。
变量
变量是计算思维的核心概念之一。
其实质是给表示一定的意义的一个数据提供一个地址。如int price;表示新建一个地方,存放表示价格的数,这个数是int 类型,即只能是整数。
通过变量的本质特征可以知道它必须满足以下的性质: