计算机程序:
计算机的每一个操作都是根据人事先指定的指令进行的。
为了是计算机进行一系列的操作,有必要事先编好每一条指令,输入计算机。
计算机的一切操作都由程序控制(所谓程序就是一组j计算机能识别和执行的指令),所以计算的本质就是一台程序执行机器。
综上所述,想要更加深入地使用计算机,就得懂得程序设计。
1.认识C语言(计算机语言)
众所周知,人与人之间的交流需要通过语言。
同理,人与计算机交流信息也要通过计算机语言进行交互。
1-1计算机语言的演变
机器语言(低级语言) >> 汇编语言 >> B语言 >> C语言(高级语言)
1-1-1 机器语言(低级语言)
计算机的工作基于二进制,也就是说计算机只能识别和接受一串0和1组成的指令。
1001011101110101 (一般计算机的指令长度位16位二进制数)
这种能被计算机直接识别和接受的二进制代码称为机器指令
机器指令的集合就是计算机的机器语言
(由于机器语言是由一串0和一组成的数字与人日常所使用的语言差异太大,所以造成了可读性极 差,所以机器语言又被称为低级语言)
1-1-2 汇编语言
为了让计算机语言能够更方便的使用,汇编语言被创造出来替代机器语言。
汇编语言用一些英文单词或数字来替代之前的二进制字符串表示一个指令。
Add (助记符)来表示 "加" Sub (助记符)来表示 "减"
虽然汇编语言可以让人更好读懂和使用,但是计算机只认识机器语言,所以就需要汇编程序软件把汇编语言指令转换为机器指令,再将得到的机器指令让计算机运行。
举个例子(虽然不太恰当,但差不多就是这样):
把计算机看作非洲土著居民,你要让土著居民帮你做一些事,但是作为一个中国人你说的是中文而你要跟说土著语非洲土著居民交流,这显然很困难。
然后为了解决这个问题,你找到了一个可以把土著说的话翻译成英文的翻译官,这时候你只要掌握英文,用英文与翻译官交流,翻译官用土著语转述给土著,这样子土著就能知道你的意图帮你。
1-1-3 C语言(高级语言)
为了解决低级语言可读性低的问题,计算机语言又经过了多代的发展,人们又创造出了B语言,然后对B语言进行优化后最终产生了C语言。C语言很接近与人们日常生活所使用的语言。程序中的语句和指令是使用英文单词表示的,程序中所用的运算式子也和人们数学所用的数学式子差不多,更加容易理解。
高级语言编写的程序称为源程序
计算机能够直接识别的指令程序称为目标程序
计算机并不能直接识别高级语言,所以要用编译程序软件 ,把源程序转换为目标程序,然后让计算机执行目标程序,最后得到结果。
举个例子:
还是刚刚那个例子,只不过这次的翻译官是中文翻译成土著语的翻译官,所以这次你只要掌握了中文能和翻译官交流就够了。
低级语言与高级语言的区别就是与计算机的距离。
最难读懂的机器语言与你距离最远而与计算机距离最近所以被称为低级语言。
较容易读懂的C语言等与你距离最近而与计算机距离最远所以被称为高级语言。
高级语言会存在缺点,厂商针对自身需求对C语言进行定制。(但这样高频率的改动容易让C语言乱套了)。
所以C语言出现了国际标准:
ANSI C:
K & R -> C89 ->C99 ->......->C11 -> C17 标准不断更新(但用的多的是C89和C99)
而其他根据C语言创造出来的诸如JAVA/C++等等的语言也同样被称为高级语言。
所以C语言也被称作 "万物之本"。