1、计算机之编程
1.1 什么是编程语言
编程语言是人与计算机交流的介质编程
1.2 什么是编程
编程就是使用编程语言编写一个个文件网络
1.3 为何要编程
为了奴隶计算机,解放劳动力,帮人类完成一个个具体的任务编程语言
2、计算机组成原理
2.1 计算机五大组成
2.1.1 CPU
2.1.1.1 控制器
控制硬件性能
2.1.1.2 运算器
进行逻辑运算+算术运算spa
2.1.2 内存
临时存储数据的硬件操作系统
- 优势(相比较于外存):速度快
- 缺点(相比较于外存):临时存储/断电即消失
2.1.3 外存
永久存储数据的硬件翻译
- 优势(相比较于内存):永久存储
- 缺点(相比较于内存):速度慢
2.1.4 输入设备
输入信息的硬件,如键盘/鼠标/u盘内存
2.1.5 输出设备
输出信息的硬件,如显示器/打印机/u盘开发
2.1.6 I/O设备
便可输入信息,又能够输出信息的硬件,称为I/O设备
2.2 32位和64位
2.2.1 32位
一次性能读取32个二进制位的操做系统
2.2.2 64位
一次性能读取64个二进制位的操做系统
2.3 多核CPU
能够同时完成多件事的CPU,如4核CPU则一个大的CPU集成了4个小的CPU
2.4 硬盘工做原理
2.4.1 机械硬盘工做原理
- 机械手臂:寻找数据
- 磁道:存储数据
- 扇区:划分磁道
- 平均寻道时间:因为工业水平的限制,为5ms
- 平均延迟时间:以7200r/min的硬盘为例,为4.15ms
\[ 7200(r/min) / 60 = 120(r/s) \\ 1/120(r/s) = 0.0083s = 8.3ms \\ 8.3 / 2 = 4.15ms \\ \]
2.4.2 固态硬盘工做原理
3、计算机操做系统
3.1 文件是什么?
操做系统提供的一个虚拟的单位
3.2 应用程序是什么?
应用程序其实就是一堆文件,用来完成具体的某个任务
3.3 操做系统能干什么?
接受应用程序/人的外部指令,而后控制硬件
3.4 计算机三大组成?
3.4.1 应用程序
应用程序其实就是一堆文件,用来完成具体的某个任务,与人/操做系统交互
3.4.2 操做系统
接受应用程序/人的外部指令,而后控制硬件,与人/应用程序/硬件交互
3.4.3 硬件
最终的目的是用来存储数据,与操做系统交互
3.4.4 应用程序的启动和操做系统的启动?
3.4.4.1 应用程序的启动
- 双击qq(发送指令给操做系统)
- 操做系统接收指令,将指令转化成0和1发送给CPU
- CPU接收指令,发送给内存
- 内存从硬盘中取出qq的程序,执行,打开qq
3.4.4.2 操做系统的启动
- 按下开机键(启动一个临时操做系统)
- 临时操做系统唤醒真正的操做系统
4、编程语言分类
4.1 机器语言
- 优势(汇编语言):执行效率高
- 缺点(汇编语言):开发效率低
4.2 汇编语言
- 优势(机器语言):开发效率高
- 缺点(机器语言):执行效率低
4.3 高级语言
4.3.1 解释型语言
相似于同声传译,写一句翻译一句
- 优势(编译型语言):开发效率高
- 缺点(编译型语言):执行效率低
4.3.2 编译型语言
相似于谷歌翻译,写完全部的代码,一次性编译后获得结果,而且结果能够保存,没法获得及时的报错反馈
- 优势(解释型语言):执行效率高
- 缺点(解释型语言):开发效率低
5、网络的瓶颈效应
因为网络传输的数据可能为10ms,而Python的代码运行时间为1ms,机器语言的代码运行时间为0.001ms,在你上一段数据运输成功以前,不管你的代码运行时间是1ms,仍是0.0000001ms,仍是9ms,本质上没啥区别,这就是互联网中的网络的瓶颈效应。