计算机语言发展史
第一代:机器语言(Machine Language)
时间:20 世纪 40~50 年代
特点:
- 计算机唯一能够直接执行的语言
- 全部由 **0 和 1(二进制)**组成
- 执行速度最快
- 编写极其困难
例如:
10110000 01100001优点:
- 执行效率最高
缺点:
- 难以阅读
- 容易出错
- 不同计算机不能通用
第二代:汇编语言(Assembly Language)
时间:20 世纪 50 年代
为了让程序员不再直接写二进制,出现了汇编语言。
例如:
MOV AX, 1 ADD AX, 2这里:
MOV:数据移动ADD:加法
程序不能直接运行,需要**汇编程序(Assembler)**翻译成机器语言。
优点:
- 比机器语言容易理解
- 运行速度快
缺点:
- 与硬件紧密相关
- 不同 CPU 的汇编语言通常不同,可移植性差
第三代:高级语言(High-Level Language)
时间:20 世纪 50 年代至今
高级语言更接近人类语言和数学表达。
例如:
a = b + c;编译器会把它翻译成机器语言。
优点:
- 易学
- 易维护
- 跨平台能力较强
常见高级语言
| 语言 | 出现时间 | 特点 |
|---|---|---|
| FORTRAN | 1957 | 科学计算 |
| COBOL | 1959 | 商业应用 |
| BASIC | 1964 | 入门简单 |
| Pascal | 1970 | 教学语言 |
| C | 1972 | 操作系统、底层开发 |
第四阶段:面向对象语言
20 世纪 80~90 年代,软件越来越复杂,面向对象编程(OOP)成为主流。
代表语言:
| 语言 | 特点 |
|---|---|
| C++ | 在 C 的基础上加入面向对象特性 |
| Java | 一次编写,到处运行 |
| C# | 广泛用于 Windows 和企业开发 |
面向对象强调:
- 类(Class)
- 对象(Object)
- 封装
- 继承
- 多态
第五阶段:脚本语言
互联网兴起后,脚本语言迅速发展。
常见语言:
| 语言 | 用途 |
|---|---|
| JavaScript | 网页交互 |
| PHP | 网站后端 |
| Python | AI、数据分析、自动化 |
| Ruby | Web 开发 |
特点:
- 开发效率高
- 通常无需提前编译(很多实现采用解释执行或即时编译)
- 跨平台
第六阶段:现代编程语言
近年来出现了许多面向现代软件需求的新语言。
例如:
| 语言 | 主要用途 |
|---|---|
| Go | 云计算、服务器 |
| Rust | 系统编程、内存安全 |
| Kotlin | Android 开发 |
| Swift | iOS 开发 |
这些语言更加关注:
- 并发性能
- 安全性
- 开发效率
- 云计算与人工智能应用
编译型与解释型语言
高级语言一般需要翻译后才能执行,主要有两种方式:
编译型
源程序 ↓ 编译器 ↓ 可执行文件 ↓ 运行例如:
- C
- C++
- Go
- Rust
特点:运行速度快,但修改程序后通常需要重新编译。
解释型
源程序 ↓ 解释器 ↓ 边翻译边执行例如:
- Python(典型实现会先生成字节码,再由解释器执行)
- JavaScript
特点:开发方便,但一般执行效率低于纯编译型程序。
发展历程总结
机器语言(0、1) │ ▼ 汇编语言(MOV、ADD) │ ▼ 高级语言(C、FORTRAN、Pascal) │ ▼ 面向对象语言(C++、Java、C#) │ ▼ 脚本语言(Python、JavaScript、PHP) │ ▼ 现代语言(Go、Rust、Kotlin、Swift)一句话记忆
- 机器语言:计算机直接执行,但人最难写。
- 汇编语言:用助记符代替二进制,仍依赖具体硬件。
- 高级语言:更接近人类思维,需要编译器或解释器翻译。
- 现代语言:在提高开发效率的同时,更注重安全性、并发能力和跨平台支持。
