编程语言的发展史
计算机语言的发展,总体分为三个阶段
第一代 机器语言 (相当于人类的原始阶段)
第二代 汇编语言 (相当于人类的手工业阶段)
第三代 高级语言 (相当于人类的工业阶段)
第一代 机器语言
1、概念
机器语言是站在计算机的角度,说计算机能听懂/理解的语言,而计算机能直接理解的就是二进制指令,所以机器语言就是直接用二进制编译,这意味着机器语 言就是直接操作硬件的,因此机器语言属于低级语言,此处的低级指的是底层、贴近计算机硬件(贴近代指需要了解计算机硬件细节、直接控制硬件)。
2、优点
计算机能够直接识别,执行速度快。
3、缺点
学习难度大,编程效率低、贴近\依赖具体的硬件,跨平台性差。
第二代 汇编语言
1、概念
汇编语言仅仅是用一个英文标签代替一组二进制指令,比起机器语言,汇编语言是一种进步;但是汇编语言的本质仍然是直接操作硬件,因此汇编语言仍然是比较低级\底层的语言、贴近计算机硬件
2、优点
相对于机器语言难度有所降低,执行效率高,但比机器语言要低
3、缺点
仍然是直接操作硬件,开发效率低。同样依赖具体的硬件,跨平台性差
第三代 高级语言
1、概念
高级语言是站在人的角度,用人类的字符去编写程序,而人类的字符是在向操作系统发送指令,而并非直接操作硬件,所以高级语言是与操作系统打交道,此处的高级指的是高层、开发者无序考虑硬件细节,因而开发效率可以得到极大的提升,但正因为高级语言离硬件较远,更贴近人类语言,人类可以理解,而计算机则需要通过翻译才能理解,所以执行效率会低于低级语言。
2、高级语言的分类
高级语言按照翻译的方式不同,又分为两种编译型和解释型
2.1、编译型(类似于go,c++)
概念:类似于百度翻译,是把程序所有的代码编译成计算机能识别的二进制指令,之后操作系统会拿着编译好的二进制指令直接操作硬件
优点:执行效率高
缺点:开发效率低,跨平台性差
2.2、解释型 (如python)
概念:类似于同声翻译,需要有一个解释器,解释器会读取程序代码,一边翻译一边执行
优点:开发效率高、跨平台性强
缺点:执行效率低
补充:
储存单位换算
比特位(bit):二进制位数
8bit = 1bytes
1024bytes = 1KB
1024KB = 1MB
1024MB = 1GB
1024GB = 1TB