07-Python-程序执行原理(科普)
程序执行原理(科普)
目标
v 计算机的三大件
v 程序执行的原理
v 程序的作用
01、计算机中的三大件
计算机中包含有较多的硬件,但是一个程序要运行,有三个核心的硬件,分别是:
1. CPU
l 中央处理器,是一块超大规模的集成电路
2. 内存
l 临时存储数据(断电之后,数据会消失)
l 速度快
l 空间小
3. 硬盘
l 永久存储数据
l 速度慢
l 空间大
回答小问题
1. 计算机中哪一个硬件设备负责执行程序?
CPU
2. 内存的速度快还是硬盘的速度快?
内存
3. 我们的程序是安装在内存中的,还是安装在硬盘中的?
硬盘
4. 我买了一个内存条,有500G的空间!!!这句话对吗?
不对,内存条通常只有4G/8G/16G/32G
5. 计算机关机之后,内存中的数据都会消失,这句话对吗?
正确
02、程序执行的原理
1、程序运行之前,程序是保存在硬盘中的
2、当要运行一个程序时
l 操作系统会首先让CPU把程序复制到内存中
l CPU执行内存中的程序代码
程序要执行,首先要被加载到内存
2.1、Python程序执行原理
1、操作系统会首先让CPU把python解释器的程序复制到内存中
2、Python解释器根据语法规则,从上向下让CPU翻译Python程序中的代码
Python的解释器有多大?
执行一下终端命令可以查看Python解释器的大小
03、程序的作用
程序就是用来处理数据的!
l 新闻软件提供的新闻内容、评论......是数据
l 电商软件提供的商品信息、配送信息......是数据
l 运动类软件提供的运动数据......是数据
l 地图类软件提供的地图信息、定位信息、车辆信息......是数据
l 即时通讯软件提供的聊天信息、好友信息......是数据
l ......
3.1思考QQ程序的启动过程
1. QQ在运行之前,是保存在硬盘中的
2. 运行之后,QQ的程序会被复制到内存中
3.2、思考QQ程序的登陆过程
1、读取用户输入的qq号码
2、读取用户输入的qq密码
思考一:
在QQ这个程序将QQ号码和QQ密码发送给服务器之前,是否需要先存储一下QQ号和密码?
肯定需要!--否则QQ这个程序就不知道吧什么内容发送给服务器了
思考二:
QQ这个程序把 QQ号码和QQ密码保存在哪里?
保存在内存中,因为QQ程序自己就在内存中
思考三:
QQ这个程序是怎么保存用户的 QQ号码和QQ密码的?
答案
1、在内存中为QQ号码和QQ密码各自分配一块空间
l 在qq程序结束之前,这两块空间是由QQ程序负责管理的,其他任何程序都不允许使用
l 在QQ自己使用完成之前,这两快空间始终都只负责保存QQ号码和QQ密码
使用一个别名标记QQ号码和QQ密码再内存中的位置
l 在程序内部,在QQ号码和QQ密码在内存中分配的空间就叫做变量
l 程序就是用来处理数据的,而变量就是用来存储数据的