python介绍,计算机核心基础,与运行程序有关的三大核心硬件,操作系统
python介绍,计算机核心基础,与运行程序有关的三大核心硬件,操作系统
- 引子
- python是什么? 什么是编程语言?为何要有编程语言?
- 什么是编程?什么是程序?什么是进程?为何要编程?
- 计算机基础
- 什么是计算机?为何 要有计算机?计算机的组成
- 与运行程序有关的三大核心硬件
- 计算机硬件详解
- 操作系统
- 计算机 的三层结构
</u
python是什么?
python是一门高级编程语言
什么是编程语言?
语言就是一种事物与另外一种事物沟通表达的方式/工具
人----------------编程语言----------------计算机
编程语言的本质就是一门语言
能够与 机器对话的人
什么是编程?
- 想好做事的步骤
- 找一种对方能听懂得语言把做事的 步骤给翻译下来,并且存入文件 中编程即程序员根据需求把自己的思想流程按照某种编程语言的语法风格编写下来,产出的结果就是包含一堆字符的文件。
银行行长-----------------------------业务员
接收客户输入的账号
接收客户输入的密码
判断 输入的账号 等于 正确的账号 并且 输入的密码 等于 正确的密码
告诉用户登录成功
否则
告诉用户登录失败程序员-----------------计算机
什么是程序 ?
程序就是一系列的代码文件
程序又称之为软件,软件是计算机硬件的灵魂
计算机硬件是负责做事的,具体怎么做则由程序控制
什么是进程?
进程指的是一个正在运行的程序
为什么要编程?
计算机就相当于人类的奴隶,编程的目的就是为了让计算机代替人类工作,从而解放人类
python的特点?
Python是一种面向对象、解释型、弱类型的脚本语言,他也是一种功能强大而完善的通用型语言。
一、计算机的基础 (***)
什么是计算机
计算机俗称“电脑”,包含人对计算机终极期望,能够真的像人脑一样去工作。
为何要有计算机
为了执行人类的程序,从而把人类解放出来
大前提:计算机所有的组成都是模仿人的某一功能或器官
计算机的五大组成部分
控制器:是计算机的指挥系统,负责控制计算机所有其他硬件的运行
运算器:数学运算和逻辑运算
控制器 运算器 =》 CPU ------------人类的 大脑
存储器:存取数据
内存:基于电工作,内存里存放的都是电信号
特点:存取速度快,断电容易丢失,只能临时存取数据---------》人类的记忆功能
外存:比如磁盘,基于磁工作,磁盘里存放的磁信号
特点:存取速度远远慢于内存,断电数据依然存在----------》人的笔记本
输入设备(input)
如:键盘、鼠标等等
输出设备(output)
如显示器、打印机等等
二、计算机硬件详解(***)
cup
x86-64
cpu具有向下兼容
64的cpu既能运行32位的程序也能运行64位的程序
多线程与多核芯片:
2核4线程:
2核代表有两个cpu,4线程指的是每个cpu都有两个线程=》假4核
4核8线程
4核代表有4个cpu,8线程指的是每个cpu都有两个线程=》假8核
内存:随机存取存储器
再往下一层是主存,此乃存储器系统的主力,主存通常称为随机访问存储RAM,就是我们通常所说的内存,容量一直在不断攀升,所以不能再高速缓存中找到的,都会到主存中找,主存是易失性存储,断电后数据全部消失
硬盘:
机械硬盘:磁盘
磁道:一圈数据,对应着一串二进制(1bit代表一个二进制位)
8bit比特位=1Bytes字节
1024Bytes=1KB
1024KB=1MB
1024MB=1GB
1024GB=1TB
1024TB=1PB
200G=20010001000B
每个磁头可以读取一段换新区域,称为磁道
把一个戈丁手臂位置上所以的磁道合起来,组成一个柱面
每个磁道划成若干扇区,扇区典型的值是512字节
扇区:
一个扇区通过为512Bytes
站在硬盘的解读,一次性读写数据的最小单为为扇区
操作系统一次性读写的单位是一个block块=》8扇区的大小=4096Bytes
柱面:
每张盘片由若干个磁道和若干个扇区组成从外向内分别为0磁道、1磁道、2磁道……不同盘片的同一磁道构成的一个圆柱面称为柱面,柱面由外向内依次为0柱面、1柱面、2柱面……磁盘将信息按扇区存入
平均寻道时间:机械手臂转到数据所在磁道需要花费的时间,受限于物
理工艺水平,目前机械硬盘可以达到的是5ms
平均延迟时间:转半圈需要花费4ms,受限于硬盘的转速
IO延迟 = 平均寻道时间 + 平均延迟时间
优化程序运行效率的一个核心法则:能从内存取数据,就不要从硬盘取
固态硬盘:固态盘(SSD)
是用固态电子存储芯片阵列而制成的硬盘,由控制单元和存储单元(FLASH芯片、DRAM芯片)以及缓存单元组成。
区别于机械硬盘由磁盘、磁头等机械部件构成,整个固态硬盘结构无机械装置,全部是由电子芯片及电路板组成。
buffer写缓冲区:
是内存空间的一部分。也就是说,在内存空间中预留了一定的存储空间,这些存储空间用来缓冲输入或输出的数据,这部分预留的空间就叫做缓冲区,显然缓冲区是具有一定大小的。
缓冲区根据其对应的是输入设备还是输出设备,分为输入缓冲区和输出缓冲区
cache读缓存:
cache是一个非常大的概念。缓存(cache)与缓冲(buffer)的主要区别
Buffer的核心作用是用来缓冲,缓和冲击。比如你每秒要写100次硬盘,对系统冲击很大,浪费了大量时间在忙着处理开始写和结束写这两件事嘛。用个buffer暂存起来,变成每10秒写一次硬盘,对系统的冲击就很小,写入效率高了,日子过得爽了。极大缓和了冲击。
Cache的核心作用是加快取用的速度。比如你一个很复杂的计算做完了,下次还要用结果,就把结果放手边一个好拿的地方存着,下次不用再算了。加快了数据取用的速度。
简单来说就是buffer偏重于写,而cache偏重于读。
ps:有时候大家要好好理解这些专有名词字面上的意思,对理解这些概念有好处,缓冲:缓解冲 击,缓存:临时存储
虚拟内存:
许多计算机支持虚拟内存机制,该机制使计算机可以运行大于物理内存的程序,方法是将正在使用的程序放入内存取执行,而暂时不需要执行的程序放到磁盘的某块地方,这块地方成为虚拟内存,在linux中成为swap,这种机制的核心在于快速地映射内存地址,由cpu中的一个部件负责,成为存储器管理单元(Memory Management Unit MMU)
IO设备=设备的控制+设备本身
三、计算机的三层结构:
应用程序
操作系统
计算机硬件(cup、内存、硬盘)

一个非常重要的基础概念:平台
应用程序都是运行于操作系统之上,而操作系统则是运行于硬件之上的,所以承载应用程序的是一台运行有操作系统的计算机,称之为应用程序的运行平台,即:硬件 + 操作系统 == 平台
常见的平台有:windows系统+某款硬件、linux系统+某款硬件、ubuntu+某款硬件等,我们在开发应用程序时就需要考虑到应用程序的跨平台性,如果能开发出一款可以在任意平台运行的应用程序,那对于开发者来说真是极大的福音。而决定应用软件的跨平台性的关键因素往往是编程语言的选择,python恰好是一款跨平台性语言,这也是我们学习它的原因之一。
计算机完整体系结构图

python介绍,计算机核心基础,与运行程序有关的三大核心硬件,操作系统的更多相关文章
- PythonDay02——编程语言、python介绍以及安装解释器、运行程序的两种方式、变量
一.编程语言 1.1 机器语言:直接用计算机能理解的二进制指令编写程序,直接控制硬件 1.2 汇编语言:用英文标签取代二进制指令去编写程序,本质也是直接控制硬件 1.3 高级语言:用人能理解的表达方式 ...
- 编程语言、Python介绍及其解释器安装、运行Python解释器的两种方式、变量、内存管理
一.编程语言介绍 1.1 机器语言:直接用计算机能理解的二进制指令来编写程序,直接控制硬件. 1.2 汇编语言:在机器语言的基础上,用英文标签取代二进制指令来编写程序,本质上也是直接控制硬件. 以上2 ...
- 2.Python入门-计算机组成、指令和程序、标识符、变量、数据类型、对象和变量关系、运算符
一.计算机的组成 计算机由两部分组成:硬件 和 软件 硬件包含:键盘.鼠标.显示器.CPU.主板.内存.硬盘 ... -硬件是看的见摸得着的 软件包含:系统软件(windows.macOS.Linux ...
- day01 计算机的基础知识
1.编程语言: 人与计算机沟通的表达方式. 2.编程: 程序员用计算机能理解的表达方式(编程语言)把程序员想让计算机实现的功能写到文件里,这些文件称之为程序. 3.计算机硬件组成: 控制器:是计算机的 ...
- objective-c 创建工程/编译/运行程序
// First program example #import <Foundation/Foundation.h> int main (int argc, const char * ar ...
- 基础知识:编程语言介绍、Python介绍、Python解释器安装、运行Python解释器的两种方式、变量、数据类型基本使用
2018年3月19日 今日学习内容: 1.编程语言的介绍 2.Python介绍 3.安装Python解释器(多版本共存) 4.运行Python解释器程序两种方式.(交互式与命令行式)(♥♥♥♥♥) 5 ...
- day2 编程语言介绍、Python运行程序的两种方式、变量
一 编程语言介绍 1. 机器语言 用计算机能理解的二进制指令直接编写程序,直接控制硬件 2. 汇编语言 用英文标签取代二进制指令编写程序,本质也是直接控制硬件 3. 高级语言 用人能理解的表达方式去编 ...
- Day1 Python 介绍及基础
******************本文目录******************一.Pyhon基本介绍 1.Why Python? 2. Python 是一门什么样的语言? 3.Python的优缺点: ...
- python 小白(无编程基础,无计算机基础)的开发之路 day1
本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语 ...
随机推荐
- Git命令太多记不住?有了这个神器,从此告别输入命令行
一 .SourceTree简介 SourceTree 是 Windows 和Mac OS X 下免费的 Git 和 Hg 客户端,拥有可视化界面,容易上手操作.同时它也是Mercurial和Subve ...
- 别人 echo 、你也 echo ,是问 echo 知多少?-- Shell十三问<第三问>
别人 echo .你也 echo ,是问 echo 知多少?-- Shell十三问<第三问> 承接上一章所介绍的 command line ,这里我们用 echo 这个命令加以进一步说明. ...
- Webpack的基本配置和打包与介绍
1. 前言 1.1 Webpack是什么 可能有很多的小伙伴对于这个Webpack既熟悉又陌生,有一些刚开始接触vue的小伙伴在对项目进行打包的时候经常会使用到npm run build来进行打包,但 ...
- GO-04-变量
GO变量 Go 语言的变量名由字母.数字.下画线组成,首个字符不能为数字: Go 语法规定,定义的局部变量若没有被调用会发生编译错误. 变量的声明 var 变量名 变量类型 批量声明变量 var ( ...
- Salesforce学习之路(七)Visualforce结合Reports展示图表
Salesforce作为一款CRM系统,个人觉得最重要的环境便是在于数据的展示和联动,而Salesforce也本身提供了相当强大的功能,Report在展示图表的方面十分强大,前段时间更是宣布以157亿 ...
- Day06_32_Java各种内部类
内部类 内部类都有哪些? 成员内部类 匿名内部类 静态内部类 局部内部类 成员内部类 - 成员内部类内部不能有静态声明(静态方法和静态变量) - 成员内部类可以访问外部类中所有的数据包括静态数据和实例 ...
- istio1.2.2 安装及使用示例
前言 本文介绍istio的安装及使用 dashboard,grafana,prometheus,kiali,jaeger的配置示例.演示通过istio的ingressgateway统一访问入口 Ist ...
- 02- Java搭建环境搭建
Java开发环境安装与配置 运行安装包 配置环境变量 验证Java是否正确安装 JDK目录 bin目录:存放可执行文件 lib目录:存放java的类库文件 include目录:存放于本地方法的文件 j ...
- 【Java】 Java中的浅拷贝和深拷贝
先抛出结论: 浅拷贝是引用拷贝,A对象拷贝B以后,A对象和B对象指向同一块内存地址,改变A对象的属性值会触发B对象属性的改变,有安全风险 深拷贝是对象拷贝,A对象拷贝B以后,A对象和B对象指向不同的额 ...
- 【日志追踪】(微服务应用和单体应用)-logback中的MDC机制
一.MDC介绍 MDC(Mapped Diagnostic Contexts)映射诊断上下文,该特征是logback提供的一种方便在多线程条件下的记录日志的功能, 某些应用程序采用多线程的方式来处理多 ...