day02

1、编程

让计算机做程序员想的事

计算机组成

1、cpu(大脑)

电脑创立初期,控制器和运算器是分开的

控制器(控制)#一

控制硬件(运算器,存储器,输入/输出设备)

2、运算器(运算)#二

算术运算(1+1=2) 逻辑运算(下雨要带伞)

3、存储器(记忆)#三

主存(大脑)

优点:运算速度快,内存越大可运行的程序就越多

缺点:容量小,断电即小事

外存(记笔记)

优点:容量大,永久存储

缺点:速度慢

4、I/O设备

输入设备(眼睛)#四

输入信息,键盘/鼠标/麦克风/U盘

输出设备(决策)#五

输出信息,显示屏/打印机/U盘

2、操作系统的作用

提供给我们一个一个接口,让我们不再关心硬件的复杂操作,让复杂操作简单化

4、计算机的组成(有了操作系统之后)

  1. 应用程序(软件):和操作系统交互
  2. 操作系统(软件):和硬件交互
  3. 硬件:硬件直接交互

3、应用程序的启动

  1. 双击QQ 让操作系统通知CPU(企鹅图标是操作系统提供的)(找到QQ在硬盘的位置)
  2. cpu让内存去外存读取qq的数据,qq数据进入内存
  3. 启动qq

5、操作系统的启动(开机)

启动软件,首先启动操作系统找软件在硬盘上的位置;操作系统本质也是一个软件,启动操作系统也必须找到操作系统在硬盘中的位置(要找到就必须通过操作系统)

五、编程语言分类

计算机只认识0和1

1、编码

0001->a

0011->b

0100->c

0111->+

叫我 0011 0010 0011 1010—》叫我爸爸

2、机械语言

写0和1

000101110011 a+b【普通人写不来】-》(设备)-》低低低高低高高高低低高高

早期只有顶级科学家才能使用计算机

优点:执行速度非常快,直接和硬件交互

缺点:开发速度非常慢

3、汇编语言

add->0111

add(a,b)(汇编语言)-》(设备))--》000101110011--》(设备)----》低低低高低高高高低低高高(高低压电频)

优点(相较于机器语言):开发效率高

缺点(相较于机器学习):执行效率低

print("hello")--->00100100101

4、高级语言

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
'''
'0001110100010110'--->直接运行

优点(相较于解释型语言):执行效率高

缺点(相较于解释型语言):开发效率低(找bug非常复杂)

解释型语言(同过设备的翻译形式)hello

类似于同声传译,说一句翻译一句,解释型语言的翻译器是通过编译器语言写出来的

x=1
y=2
print(x+y)
#这串代码表示:打印1+2的值

'''
nick is pretty nice
I would like a hamburger
'''

'00011011001'
'10001000111'--->逐段运行

优点(相较于编译型而言):开发效率高

缺点(相较于编译型而言):执行效率低

六、网络的瓶颈效应

网络通信的时间(10ms)远远大于执行程序的时间(0.01ms)--》程序的执行效率完全没必要考虑了--》(网络的应用程序)解释型语言--》python

操作系统-(单机操作的应用程序)--》编译型语言

物理学:光谱

操作系统1G内存

微内核0.1G内存+0.1G网络通信0.9G放到服务器

posted @ 2019-08-22 15:48  风啊风啊  阅读(146)  评论(0编辑  收藏  举报