# 编程语言是什么?
## 概念
![1658742760712](https://wcflove.gitee.io/images/1658742760712.png)
人和人交流沟通所使用的的语言叫做自然语言,例如汉语,英语。
![1658742859583](https://wcflove.gitee.io/images/1658742859583.png)
所谓的编程语言,其实就是人和计算机交流的语言。
与自然语言不同, 编程语言有极其严格的语法和准确没有歧义的语义。通过编程语言编写程序交由计算机去执行与通过自然语言编写文章给其他人阅读本质其实一样。
学习编程语言和学习自然语言的方法也类似。
![1658743179282](https://wcflove.gitee.io/images/1658743179282.png)
学习自然语言会先学习语法,字,词,句,阅读文章,最后模仿写文章。
![1658747684502](https://wcflove.gitee.io/images/1658747684502.png)
编程语言也是先学习语法,关键字,语句,然后阅读别人编写的代码,最后模仿编写自己的代码。
自然语言一般都会有成千上万的字和词,要掌握一门自然语言需要数年时间。而编程语言通常只有几十个关键字,几个流程控制语句,所以从量上来说,编程语言比自然语言要容易学得多,要掌握一门编程语言通常只需要数月时间。
## 分类
编程语言一般分为机器语言,汇编语言和高级语言,或者说是编程语言经历的三个阶段。
### 1. 机器语言
![1658828006687](https://wcflove.gitee.io/images/1658828006687.png)
能够直接被计算机识别的指令称为机器语言。
机器指令就是一串二进制数,`010110101`。它的优点是能够直接操作计算机的最底层的动作。缺点是人类难以记忆和阅读,学习成本高,需要熟知计算机的物理原理,目前只有各大芯片厂商的技术人员使用机器语言进行编程外,绝大部分程序员使用的是高级语言。
### 2. 汇编语言
![1658828096994](https://wcflove.gitee.io/images/1658828096994.png)
汇编语言本质上就是机器语言,只不过为了阅读和书写,给不同的指令加上了简短的助记符。例如使用`ADD`表示加,`SUB`表示减。但它的学习成本依然很高,只有少数对计算机硬件熟悉的程序员在使用。
### 3. 高级语言
![1658828151561](https://wcflove.gitee.io/images/1658828151561.png)
因为机器语言,汇编语言都是直接操作计算机底层的运算器的微小步骤,要实现我们看起来的简单功能例如在屏幕打印一行文字,需要大量代码。因此机器语言和汇编语言也称为低级语言。通过低级语言编写程序非常繁复,所以为了更好的利用计算机,计算机科学家发明了高级语言。
高级语言并不是特指一种语言,在计算机技术的发展历程中出现了很多高级语言,其中大名鼎鼎的C,JAVA,PYTHON都是高级语言。
高级语言是对低级语言的封装,高级语言编写的代码是给人类阅读的,计算机不能直接识别,需要通过翻译成机器码然后交给计算机执行。
~~~
- 第1章 编程基础
- 零基础能学Python吗?
- 编程语言是什么
- 编译型与解释型编程语言的区别
- python是什么?
- 学python能干什么?
- 第2章 python开发环境搭建
- windows下安装python
- cmd命令行工具
- 环境变量如何设置?
- 如何运行python程序?
- 学习神器Jupyter lab
- 第3章 基本数据类型
- 基本数据类型概述
- 变量的定义和使用
- 整数类型
- 浮点数类型
- 算术运算符
- 赋值运算符
- 字符串类型
- 字符串常用方法
- 字符串格式化
- 列表类型
- 元组类型
- 可变与不可变类型
- 深浅拷贝
- 集合类型
- 字典类型
- 布尔型
- NoneType
- 第4章 程序流程控制
- 程序结构
- if分支语句
- while条件循环
- for循环
- 循环控制关键字
- 异常处理
- 第5章函数与代码复用
- 函数的定义和调用
- 函数的参数
- 函数的返回值
- lambda函数
- 变量作用域
- python内建函数
- 第6章 面向对象
- 类和对象
- 属性
- 方法
- 继承
- super()函数
- 多态
- 私有化
- 自省与反射机制
- 第7章 模块和包
- 模块
- 包
- 第三方库
- 第8章 文件IO操作
- 文件概述
- 字符编码
- 字节类型
- python读取文件
- python写文件
- 文件指针