编程就是将自己想让计算机做的事用编程语言写到文件里,写出来的一堆文件就是程序。现在应用的最多
的三种编程语言是java、c语言和Python,编程语言本质上和人类语言是一样的,目的是沟通。中文等是
人类之间沟通的语言,编程语言是人类和计算机之间的沟通语言。计算机本质是一堆硬件加电流,想让这
些硬件动起来就需要机器语言直接跟硬件打交道。而后机器语言根据翻译方式不同产生了两个流派,编译
型语言和解释型语言。
计算机分为五大组成部分:控制器、运算器、存储器、输入设备和输出设备。
控制器为计算机的指挥系统,相当于人类的大脑,在接受指令后才会控制计算机做出相应的反应,大脑除
了指挥还要实现算术运算和逻辑运算(我巴拉不下去了,这个我的理解是知道它们是干啥的就行)。
操作系统就是一个管家,控制程序运行的系统软件,它为用户提供了一个方便、安全、可靠的工作环境和
界面。
四个基本特征:
并发性:指两个或多个事件在同一时间间隔内发生;
共享性:指系统中的资源可供内存中多个并发执行的进程共同使用;
虚拟性:指通过某种技术把一个物理实体变成若干个逻辑上的对应物;
异步性:不确定性。在多道程序设计中,各个程序之间存在着直接或间接的联系,程序的推进速度受它
的运行环境的影响。这时同一程序和数据的多次运行可能得到不同的结果;程序的运行时间、
运行顺序也具有不确定性;外部输入的请求、运行故障发生的时间难以预测。这些都是不确
定性的表现。
机器语言是微处理器理解和使用的,用于控制它操作二进制代码,二进制代码编程使用机器语言编程,直
接操作硬件。
优点:执行效率高
缺点:开发的效率低
汇编语言类似于机器语言,但不需要去记住二进制数,而是需要去记住一个一个英文单词
优点:开发效率高(较于机器语言)
缺点:执行效率低(较于机器语言)
? 人类代码--》一次性把代码给翻译(编译)--》汇编--》机器语言
? 编译型语言代表有:c语言、c++、golang(这个看不懂)
? 优点:执行速度快
? 缺点:跨平台可移植性差
? 人类代码--》边执行边翻译(解释),陪同翻译(解释器/虚拟机)--》机器语言
? 解释型语言代表有:Python、PHP(这个看不懂)、ruby(这个看不懂)、c#、Java(这貌似是个杂交型语言)
? 优点:跨平台好
? 缺点:执行速度慢(翻译需要时间)
执行速度慢只是计算机理解的慢,大多数情况下,语言的快慢是我们人类感知不到的。
原文:https://www.cnblogs.com/yu9527/p/12548005.html