文档介绍:学习 C 语言的必备基础知识第一章计算机和数据的存储第一节了解计算机很奇怪的一件事,现在的 C 语言教材,一上来就是变量,表达式,一点也不提计算机原理方面的事,把C 语言当作语言, 数学来学, 只是生硬的列出一些语法规则, 学生们难以理解, 只好死记硬背, 没有把握住本质的东西, 也就无法随心所欲, 其实 C 语言是一门非常好学的语言,核心的语法规则是非常少的,而且都是和计算机息息相关,所以必须要学习好计算机的一些基础, 掌握好计算机的基础知识对学习 C 语言至关重要,对将来其它语言的编程都极其有益, C 语言还有一个优点, 就是写法非常简洁明了,和 c++ , java , C#, javascript 等语言有着非常相似的书写方式, 所以学好 C 语言, 可以轻松的过渡到大量其它编程语言。讲完 C 以后,将陆续推出 java ,C#,C++ , javascript,ruby,python 等,不过都是在此教程的基础之上进行, 所以 C 语言乃基础之基础,想要学编程,强烈建议从 C 语言开始。下面开始了解计算机。按照冯诺依曼的理论, 计算机含有 5 个部分, 运算器、控制器、存储器、输入和输出设备。现在我们通常把运算器、控制器和在一起,称为 CPU( 中央处理器), 存储器就是我们说的内存和硬盘, 输入设备就是鼠标,键盘等,输出设备主要是显示器、打印机、绘图仪等。其中 CPU 和内存最关键, CPU 是执行指令的部件, 内存是一些连续的存储单元,用来存储指令和数据,每个单元可以存 8 位二进制数,也称为 1 个字节, 计算机里存储器都是以字节为单位的, 在描述网络速度的时候通常以位为单位, 大家注意区别。 CPU 要执行的指令就存在内存里, CPU 按照指定顺序连续地执行内存中的指令, 这就是冯诺依曼体系的基本工作原理。什么是指令, 就是一些二进制的数, 比如 10010001 是一条加法指令, 10011011 是一条存储指令, CPU 遇见不同的指令就会完成不同的操作, CPU 能够执行的指令是生产厂家生产时就设计好的,比如 808 6 基本指令有 70条, 那么 CPU 就只认识这 70 条指令, CPU 在不断升级, 除了运行速度加快还会增加一些新的指令, CPU 的指令分三大类:传送, 计算, 跳转, 其实我们的编程语言也就能完成这些功能。其中传送主要是管理存储器, 管理数据如何存储, 是最重要的, 计算比较简单,主要是数学计算,跳转让计算机有了智能。什么是数据, 数据可以是要计算的数字, 也可以是一篇文章, 一幅画, 一首歌, 这些东西必须先存到内存里, 才能让 CPU 传送到显卡, 声卡, 我们才能听见看见。在内存里指令和数据是分开存放的, 我们在编写程序时用到的内存通常是指存储数据用的数据区,在一条指令里,往往也分操作码和操作数, 操作数也是一种数据, 只不过它是指令的一部分,存储在指令区,这种数据称为操作数,以后也会用到。什么是程序, 程序就是由一批指令和数据组合在一起构成的二进制数据集。但如果要用二进制来写程序, 那估计肯定有人骂街了, 我们通常用能看懂的字母和阿拉伯数字来写程序, 第一种被发明的编程语言叫汇编语言, 它给每个二进制指令都给起了一个英文名字, 叫做助记码,我们用助记码写起程序来要好看多了,但是 CPU 是看不懂