python-D2-计算机与编程语言
计算机五大核心
控制器
计算机的指挥系统,可以控制计算机硬件的整体运行
运算器
实现算术运算和逻辑运算
控制器和运算器结合起来就是cpu,也称为中央处理器,是整个电脑的核心。
存储器
分为两类,非永久性存储和永久性存储,非永久性存储指断电后数据丢失,永久性存储指在没有被人为的破坏和硬件本身损坏外可以提供永久性存储,断电后数据还存在。
非永久性存储一般是内存,如下图所示:
优点:基于电工作,存取数据速度快 缺点:断电后数据丢失 类似于人的短期记忆
永久性存储常见的有U盘、硬盘、固态硬盘等。
硬盘:
固态硬盘
优点:可以永久保存数据 缺点:存储数据的速度较慢 类似于人的长期记忆
输入设备
向计算机输入信息和数据的设备,是计算机与用户或其它设备通信的桥梁。常见的有键盘、鼠标等。
键盘
输出设备
计算机系统的终端设备,用于接收计算机数据的输出显示,打印,声音,控制外围设备操作等,常见的有打印机、音响、显示器等。
显示器
计算机三大核心硬件
- CPU
中央处理器,是一块超大规模的集成电路,负责处理数据/计算。计算机真正干活的人。(程序要运行起来必须要CPU参与才行) - 内存
存取数据的速度极快,主要与CPU配合使用 - 硬盘
能够永久存储数据,空间大,速度慢
1.我想玩LOL端游
下载该游戏软件>>>:下到哪里去了?
1.思考计算机能够存储数据的地方
2.反向思考如果是内存,断电立刻丢失,不太可能
3.我们下载软件其实都是下载到了计算机硬盘中
2.双击LOL端游图标
1.将硬盘中lol程序代码读取到内存>>>:如果容量很大,那么等待的时间越长,硬盘读取速度是有上限的(硬盘转圈读取数据)
2.CPU去内存中获取程序中的指令并执行
3.LOL游戏开始运行,你可以快乐起来了
1.内存的容量一般比硬盘小的多的多
硬件水平跟不上
4GB 8GB 16GB 32GB 64GB 128GB 256GB
2.为什么不直接砍掉内存,让CPU跟硬件交互
CPU的运行速度非常的快(1000) 但是硬盘的运行速度非常的慢
内存的速度比硬盘快很多,可以跟CPU搭配干活,可以提升CPU运行效率
3.只要是运行的程序,产生的数据第一时间肯定在内存
以前的文本编辑器使用过程中如果突然断电数据会立刻丢失,现在的文本编辑器不会出现这种情况的原因是内部自动执行保存操作
保存>>>:将内存中的数据刷到硬盘
扩展:自动保存机制有两种方式
方式1:实时检测文档变化,一旦有变化就保存
方式2:循环定时任务,每隔一段时间保存一次
操作系统
- 控制、协调、管理计算机各个硬件的工作
操作系统是软件的一部分,它是硬件基础上的第一层软件,是硬件和其他软件沟通的桥梁,操作系统会控制其它程序运行,管理系统资源,提供最基本的计算功能,如管理及配置内存,决定系统资源供需的优先次序等。
我们日常所使用的应用程序都必须依赖于操作系统之上才可以运行。
PC端常见操作系统:Windows、MacOS、linux
移动端常见操作系统:安卓、IOS、鸿蒙
编程与编程语言
什么是编程语言
什么是语言
我们常见的人与人之间沟通的中文、英文等,它是人与人之间沟通的媒介
什么是编程语言
人与计算机之间沟通交流的媒介
什么是编程?(重要)
程序员将自己的思维逻辑和想法用计算机能够读懂的语言写下来的过程,编程的结果就是产生一堆文件
PS:学习编程真的不难,相当于在学习一门全新的语言,我们在学习新的语言的时候之所以不能灵活掌握只有一个原因,练的少了。
编程语言发展史
- 机器语言
第一代计算机语言,机器语言是用二进制代码(0和1)表示的计算机能识别和执行的一种机器指令的集合。
优势:计算机能够直接读取,执行效率高
劣势:学习难度大,开发效率低,门槛高
- 汇编语言
用一些英语字母表示一串二进制数
优势:学习难度有所降低,开发效率有所提高
劣势:门槛还是很高
- 高级语言
用人类能够读懂的字符与计算机沟通交流
优势:学习难度低、开发效率高、门槛低
劣势:执行速度没有上述两个语言快
常见高级语言:C++、java、php、python、golang
虽然很多但是万变不离其宗,底层原理几乎一致,掌握了一门学习其它的会非常快
编程语言的分类
高级语言都需要经过翻译之后才能被计算机识别并执行
1.编译型语言 c++
类似于谷歌翻译(一次性翻译)翻译之后可以反复使用翻译的结果
优势:一次翻译可以反复使用,执行效率高,速度快
劣势:当程序中频繁出现bug,那么需要反复编译
2.解释型语言 python
类似于同声传译(说一句翻一句)
优势:有bug和没有bug执行效率几乎一样
劣势:速度没有编译型语言快
#要想让计算机能够识别并运行高级语言需要对应类型的翻译官
python解释器
1.历史
荷兰的龟叔在圣诞节的时候闲着无聊开发了python
2.版本
版本其实是软件更新迭代的记录
python1.X:初期版本 几乎不用
python2.X:python2.7(2020年就已经不再维护更新)
python3.X: python3.6 python3.8 python3.10+
ps: 我们学习python语法,对版本的区别差异不大
下载
官网:https://www.python.org/downloads/windows/
安装
环境变量
何为环境变量? 可以看成是查找资源的大仓库
我们在cmd窗口内查找资源的时候
1.先在当前路径查找(在家里找)
2.如果没有 则去系统环境变量中查找(派出所)
3.还没有 则会提示报错(凉凉)
修改环境变量之后需要使用新的cmd窗口
多版本共存
拷贝解释器中的python.exe文件
然后给拷贝之后的文件命名(独一无二)
运行python程序的三种方式
1. cmd直接编写运行
适用于较短 临时执行的代码
2. 解释器命令运行
可以编写较长的代码 并且可以长久保存
3.利用IDE工具编写并运行
IDE 开发工具:自动提示,携带各种功能插件,编写代码效率更高更快
sublime 对小白不友好
vscode 对小白不友好
pycharm 功能强大,对小白友好
python-D2-计算机与编程语言的更多相关文章
- 『Python基础-1 』 编程语言Python的基础背景知识
#『Python基础-1 』 编程语言Python的基础背景知识 目录: 1.编程语言 1.1 什么是编程语言 1.2 编程语言的种类 1.3 常见的编程语言 1.4 编译型语言和解释型语言的对比 2 ...
- [译]Python作为一种编程语言有多强大?
Quora上有个问题:Python作为一种编程语言有多强大? 以下是Patrycja Okowicka的回答 说实话,Python是一门强大的语言,几乎所有东西都可以用Python创建!这就是为什么它 ...
- Python 获取计算机全名(fully qualified host name)
Python 获取计算机全名(fully qualified host name) import socket socket.getfqdn() socket.gethostname()
- 转载:帮你提升 Python 的 27 种编程语言
帮你提升 Python 的 27 种编程语言: 出处:http://www.oschina.net/translate/languages-to-improve-your-python
- Python——最美丽的编程语言
之前总听别人说Python有多厉害,有多好,我是不以为然的.但是当我开始接触Python的时候,我就知道它被誉为最美编程语言不是没有道理的.简短的代码,清晰明了的逻辑,方便快捷的编程工具让它注定会大放 ...
- Python进阶----计算机基础知识(操作系统多道技术),进程概念, 并发概念,并行概念,多进程实现
Python进阶----计算机基础知识(操作系统多道技术),进程概念, 并发概念,并行概念,多进程实现 一丶进程基础知识 什么是程序: 程序就是一堆文件 什么是进程: 进程就是一个正在 ...
- 第二章 python之计算机基础
@python基础 零基础就是个幌子,因为零基础什么都干不了. 如果零基础随随便便就把自动化做起来,那自动化测试就不值钱了:因为这种简单的事情,谁都可以做到. 本课程从零基础出发,补足基础后,不仅仅学 ...
- python之浅谈编程语言
一.编程语言的分类 机器语言(低级语言) 可以直接和硬件交互,用0和1和计算机沟通 优点:执行效率高(因为可以直接和计算机沟通) 缺点:开发效率低(都是用0和1进行编码) 汇编语言 同样可以直接和硬件 ...
- 《Python》 计算机基础
一.计算机基础: cpu:中央处理器,相当于人的大脑,运算中心,控制中心. 内存:暂时存储数据,与CPU交互. 优点:内存读取速度快. 缺点:容量小,造价高,断电即消失. 硬盘:长期存储数据. 优点: ...
- 用Python获取计算机网卡信息
目录 0. 前言 1. 测试环境及关键代码解释 1.1 测试环境 1.1.1 系统: 1.1.2 开发工具: 2. 模块介绍及演示 2.1 platform模块使用示例 2.2 netifaces模块 ...
随机推荐
- you need to load the kernel first
背景:在用第三方软件备份win10系统时,提示you need to load the kernel first 1.进BIOS把硬盘AHCI 模式调整成 SATA. 2.检查硬盘数据线是否插紧.主板 ...
- 迅捷Flutter图片浏览软件
下载地址: https://github.com/patton88/agile_flutter_picture_show/raw/master/agile_flutter_picture_show_v ...
- vue原理相关
vue原理三大模块:响应式.vdom和diff.模板编译 vue原理要点: 1.组件化 组件化的历史:在vue之前已经有组件化的概念了,想asp.jsp.php等就有组件化的概念,nodejs也有组件 ...
- LuoguP1858 多人背包(DP)
第\(K\)优解这类问题可在\(DP\)过程中通过添维解决.归并出当前前\(K\)大的解. #include <iostream> #include <cstdio> #inc ...
- 使用Linux、Nginx和Github Actions托管部署ASP.NET Core 6.0应用
使用Linux.Nginx和Github Actions托管部署ASP.NET Core 6.0应用 前言 本文主要参考微软这篇文档而来 Host ASP.NET Core on Linux with ...
- React报错之JSX element type does not have any construct or call signatures
正文从这开始~ 总览 当我们试图将元素或react组件作为属性传递给另一个组件,但是属性的类型声明错误时,会产生"JSX element type does not have any con ...
- PerfView专题 (第六篇):如何洞察 C# 中 GC 的变化
一:背景 在洞察 GC 方面,我觉得市面上没有任何一款工具可以和 PerfView 相提并论,这也是为什么我会在 WinDbg 之外还要学习这么一款工具的原因,这篇我们先简单聊聊 PerfView 到 ...
- 监督学习集成模型——AdaBoost
一.集成学习与Boosting 集成学习是指将多个弱学习器组合成一个强学习器,这个强学习器能取所有弱学习器之所长,达到相对的最佳性能的一种学习范式. 集成学习主要包括Boosting和Bagging两 ...
- 基础2:js创建对象的多种方式
js创建对象的多种方式 1. 工厂模式 function createPerson(name) { var o = new Object() 0.name = name return o } var ...
- RabbitMQ 入门系列:8、扩展内容:接收信息时:可否根据RoutingKey过滤监听信息,答案是不能。
系列目录 RabbitMQ 入门系列:1.MQ的应用场景的选择与RabbitMQ安装. RabbitMQ 入门系列:2.基础含义:链接.通道.队列.交换机. RabbitMQ 入门系列:3.基础含义: ...