markdown
Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。
什么是编程语言
编程语言是程序员和计算机之间沟通的介质。
什么是编程
程序员用某种编程语言让计算机做事
为什么编程
为人类工作,解决问题
计算机的组成
计算机分为五大部分组成
- 控制器
- 运算器
- 存储器
- 输入设备
- 输出设备
CPU
CPU(计算机的中央处理器CPU)分为
- 控制器
- 运算器
相当于人的大脑
控制器
计算机的指挥系统
运算器
运算器是计算机的运算系统,大脑除了指挥,还实现逻辑和算术运算
存储器
计算机的存储系统分为:
- 内存(主存)
- 外存
主存
内存是计算机内临时存储数据的硬件设备。
- 优点:存取速度快
- 缺点:容量小,断电数据消失。
外存
外存是计算机内永久存储数据的硬件设备,主要存储软件等用量大的数据。当需要使用外存上的某个软件时,CPU下达的指令需要传输给内存后,内存再从外存中读取软件信息。即CPU不与外存直接交互
- 优点:容量大,永久存储数据
- 缺点:存取速度慢
输入设备
计算机输入信息的设备。
输出设备
计算机输出信息的设备。
多核CPU
多个CPU,电脑可以同时干多件事。
32位和64位
X86-32位表示CPU每次读取32位二进制数。
X86-64位表示CPU每次读取64位二进制数。
CPU具有向下兼容性,即64位电脑能下载32位的软件,而32位的软件下载64位的软件会丢失数据
机械硬盘工作原理
机械硬盘主要由机械手臂、磁道、和扇区组成
机械手臂
机械键盘通过机械手臂读取数据,机械手臂的末端是磁头
磁道
磁道是机械硬盘的磁面中的一个一个圈,磁道用于存储数据。
扇区
扇区的最小单位通常为512KB(随磁盘大小不断增大),为了减小IO操作,机械硬盘也会将多个相邻的扇区组合在一起,形成一个块,这个块便就是我们再系统中看到的C、D分区。
平均寻道时间
数据存放再磁道上,机械手臂读取数据首先要找到磁道。由于工业水平受限。所以
平均寻道时间 为 5ms
平均延迟时间
由于数据的位置是不确定的。
平均延迟时间 计算出为 4.15
平均寻找数据时间
寻找数据时间=平均寻道时间+平均延迟时间
操作系统
操作系统位于计算机硬件与应用软件之间,它是一个协调管理计算机资源和软件资源的控制程序。它把硬件的复杂操作,封装成一个一个简单的接口,供人们使用。
什么是文件
理解成一个虚拟单位。
操作系统有什么用
由于我们以后开发的都是应用程序,应用程序无法操作硬件,都是调用操作系统的接口。
操作系统的启动
操作系统代码由硬盘读入内存(BIOS程序),CPU运行操作系统代码(CMOS存储器),运行成功后操作系统接管操作硬件的工作。
应用程序的启动
应用程序代码由硬盘读入内存,CPU运行应用程序代码,运行成功即可使用应用程序。装了操作系统才能装应用程序。
机器语言
由于计算机内部只能接受二进制代码,因此,用二进制代码0和1描述的指令称为机器指令,全部机器指令的集合构成计算机的机器语言。
- 优点:执行效率高
- 缺点:开发的效率低
汇编语言
汇编语言的实质和机器语言是相同的,都是直接对硬件操作,只不过指令采用了英文缩写的标识符,更容易识别和记忆。
- 优点:开发效率高
- 缺点:执行效率低(和硬件交互还有一个英文单词翻译的过程)
高级语言
高级语言直接用人能理解的语言和语法风格编程程序,程序员无须再去考虑复杂的硬件操作。
- 优点:开发效率高
- 缺点:执行效率低(不再和硬件直接交互)
编译型
是用专门的编译器,针对特别的平台,将高级语言源代码一次性的编译成可被该平台硬件执行的机器码,并包装成该平台所能识别的可执行性程序的格式,并且只需要编译一次,以后再也不用编译。(类似谷歌|百度翻译)
- 优点:执行效率高(有解释器省去很多翻译的过程)
- 缺点:开发效率低
解释型
使用专门的解释器对源程序逐行解释成特点平台的机器码并立即执行,它不需要事先编译,直接将代码解释成机器码直接运行。(理解为同声传译)
- 优点:开发效率高(写一行翻译一行)
- 缺点:执行效率低
总线
总线相当于人类的神经、血管、连接计算机的所有硬件设备。
执行python程序的两种方式
交互式
交互式环境下,敲完一条命令就可以看到结果,调试程序方便。程序无法永久保存,关掉CMD窗口数据就消失了。
命令行式
在文本编辑器中写入一串字符,其中的代码毫无意义,只是一堆字符。
什么是应用程序
软件中除了操作系统,都可以称之为应用程序。位于操作系统之上,用来帮助人干各种各样的工作,它不直接与硬件交互。