目录
什么是编程
表达自己的想法(实现一些东西)
编程:通过编程语言做一些事情,写一队.py/.obj/.css文件
CPU(大脑)
电脑创立初:控制器和运算器是分开的
控制器(控制) # 一
控制硬件(运算器,存储器,输入设备,输出设备)
运算器(运算) #二
算术运算(1+1=2)+逻辑运算(今天下雨我就带伞)
存储器(记忆)#三
主存(脑子)
内存(内存4GB--》8GB)最好换一下
有点:运算速度快 内存越大可运行的程序就越多
缺点:容量小,断电即消失
外存(记笔记)
机械硬盘--》128GB固态硬盘 这个也最好换一下
优点:容量大,永久存储
缺点:速度慢
I/O设备(Input/Output设备)
输入设备(眼睛)#四
输入信息,键盘/鼠标/麦克风/U盘
输出设备(决策)#五
输出信息,显示屏/打印机/U盘
机械硬盘工作原理
凹凸凹凸凹凸 010101
机械手臂
读取数据
磁道
存储数据
扇面
划分了磁道,多个扇面其实就是一个盘(区)
一个扇面就是512KB,计算机一次性从盘里读取512KB数据
平均寻道时间
由于工业水平限制--》5ms
平均延迟时间
7200r/min的电脑
\[ 7200/60=120r/s 1/120=0.0083s=8.3ms 平均时间=8.3ms/2=4.15ms \]
平均寻找数据时间
\[ 5+4.15=9.15ms \]
操作系统有什么用
提供给我们一个一个接口,让我们不再关系硬件的复杂操作,让复杂操作简单化
计算机的三大组成
人
应用程序
操作系统
硬件
人-》操作系统
应用程序-》操作系统
操作吸引-》人/应用程序/硬件
硬件-》操作系统/硬件
操作系统的启动(开机)
启动软件,首先启动操作系统找软件在硬盘上的位置;操作系统本质也是一个软件,启动操作系统也必须找到操作系统在硬盘中的位置(要找到就必须通过操作系统)
计算机只认识0和1
编码
0001--》a
0011--》b
0100--》c
0111--》+
叫我 0011 0001 0011 0001--》叫我爸爸
机械语言
写0和1
000101110011 a+b【普通人写不来】--》(设备)--》低低低高低高高高低低高高
早期只有顶级科学家才能使用计算机
优点:执行速度非常快,直接和硬件交互
缺点:开发速度非常慢
汇编语言
add--》0111
add(a,b)(汇编语言)--》(设备)--》000101110011--》(设备)----》低低低高低高高高低低高高(高低压电频)
优点(相较于机器语言):开发效率高
缺点(相较于机器语言):执行效率低
print('hello')--->0010010101011
高级语言
a+b(解释型语言)---》(设备)---》a+b(高级语言/编译型语言)--》(设备--翻译)--》add,a,b--》(设备)--》00010101001--》低低高高(高低压电频)
编译型语言(通过设备的翻译形式)
类似于Google翻译,一次性翻译所有代码为机器代码
x=1
y=2
print(x+y)
#这串代码表示:打印1+2的值
'''
nick is pretty nice
I would like a hamburger
'''
'0001101100110001000111'--->直接运行
优点(相较于解释型语言):执行效率高
缺点(相较于解释型语言):开发效率低(找bug非常复杂)
解释型语言(通过设备的翻译形式)hello
类似同声传译,说一句翻译一句,解释型语言的翻译器是通过编译型语言写出来的
x=1
y=2
print(x+y)
#这串代码表示:打印1+2的值
'''
nick is pretty nice
I would like a hamburger
'''
'00011011001'
'10001000111'--->逐段运行
优点(相较于编译型而言):开发效率高
缺点(相较于编译型语言):执行效率低
wdnmd
交互式
输入一行,解释一行
交互式下,不需要print直接打印
命令行式
python是一个解释器
python 文件路径