计算机硬件基础

三连问!!!Q&A

(1)Q:python是啥?

        A:python是一门编程语言,是程序员与计算机沟通的介质。

(2)Q:什么是编程?

        A:程序员把自己的思维逻辑写才来,编程的结果就是一堆文件。

(3)Q:为什么编程?

        A:让计算机按照人的思维逻辑执行事件,减少人力资源消耗。

So:一套完整的计算机系统分为:计算机硬件+操作系统+应用软件

【PS:0基础看这里:操作系统实质也是软件,但是电脑一开机就运行,用来控制应用软件(即应用程序)】

So:python的编程之路分为:计算机硬件基础+操作系统基础+python编程

关于计算机硬件主要掌握重点:CPU+存储器(内存+硬盘)

一、计算机硬件的五大组成部分

1、整体介绍

控制器:计算机的指挥系统

运算器:实现逻辑判断运算与数学运算     注:CPU=控制+运算

存储器:(1)内存储器(主存储器,内存):通电有数据,断电没数据;(2)外部存储器(一般都是机械硬盘或者固态硬盘):数据永久保存

               内存储器的运行速度>>>>外部存储器【N个数量级的差别】;但是一般软件(应用程序)都是安装在外部存储器(硬盘)。

输入设备:input

输出设备:output

2、整体联系:

(1)存储器是I/O设备【可以往里面输入数据,也可以输出数据】

(2)控制器+运算器=CPU

(3)CPU、内存(主存储器)以及其他I/O设备都是由一条系统总线(bus)连接起来,并通过总线与其他设备通信。

3、关系举例(人)

CPU是人的大脑,负责控制全身和运算;

内存是人的记忆,负责临时存储;

硬盘是人的笔记本,负责永久存储;

输入设备是耳朵、眼睛或者嘴巴,负责接收外部的信息存入内存;

输出设备是你的面部表情或者屁股,负责经过处理输出后的结果。

【以上这些设备都是通过总线连接,总线相当于人的神经】

二、处理器CPU【控制器+处理器】

1、功能:控制+运算(逻辑运算+数学运算)     

     工作方式:取指令→分析→执行

2、CPU读取的数据都是从主存储器(内存)来的!【CPU不能直接从硬盘读数据】

因为:主存储器的运作速度极高(基于电工作),而外部存储器的运作速度低(基于磁盘工作,看转速)

所以:所有的的软件运行都是→硬盘先读到内存,之后CPU再从内存读取数据。

【此处:若电脑内存较小,随着软件数的增多,电脑越来越卡】

3、问:操作系统是软件,操作系统被安装到哪了?

析:软件就是别人写的代码,被安装在存储器中,在外部存储器(硬盘)中【因为断电不消失】。每个电脑都有相应的硬盘(外部存储器)来安装我的操作系统

So:操作系统是被存放在硬盘【windows中有C盘来专门安装操作系统软件】

若想让电脑运行速度快(运行操作系统的速度快,本次指:开机快)→把系统硬盘换成固态硬盘。Why?

Because:(1)开机过程:操作系统软件先从硬盘到内存,然后CPU从内存上读数据,执行指令

                (2)固态硬盘的速度>>>>>机械硬盘

So:个人笔记本想提高速度(本次指:开机速度),可以设置一块固态硬盘

!!!强调!!!:程序(即软件)要想运行,都是先从硬盘到内存,然后CUP才可以从内存中运行程序。【软件但凡要运行,就要“跑到”内存中,由CPU在内存中运行软件】

4、CPU又称微处理器,用于控制和运算,相当于“人的大脑”

(1)在计算机中,CPU常被制为一块具有特定功能的芯片,称为微处理器,芯片里有编写好的微指令集

(2)在主机上的所有操作或者任何软件的执行,最终都要转化成CPU的指令去执行

(3)比如:输入输出,阅读、视频、上网等这些都要参考CPU是否内置有相关的微指令集才行。

【注:CPU中的一些微指令集,对应着一些基本的功能,CPU的指令集不同,“干”的活就不同】

5、CPU的分类→“微指令集”   

思考:笔记本上贴的Intel、AMD是咋回事?

(1)精简指令集(Reduced Instruction Set Computing,RISC)

特点:多用于学术领域(大型机、大型工作站);指令短、速度快【但若想完成复杂操作,需要一堆精简指令集】

(2)复杂指令集(Complex Instruction Set Computing,CISC)

特点:多用于个人计算机;一条指令特别长,其功能特别多,运行速度慢

现在CPU构架:×86   【表示:CPU的一种指令集】

6、问:电脑中32位、64位的区别是?

答:CPU是具体干活流程:取指令→分析→执行

从内存中取指令,32位、64位指:CPU一次能取指令的最大量。(位:比特位)

一般情况下:电脑分为32位、64位(每次取指令的最大集),指电脑中CPU的构架:×86(32位),×86_64(64位)

计算机中的存储都是二进制,一个二进制就是一个bit,比如:111是3个bit(基于二进制)

7、CPU的向下兼容性【即:64位的能兼容32位的,反过来不行】

比如:机器是64位的,能安装32位的软件【反过来不成功】

因为:32位的软件下载下来存放在硬盘,都是二进制,读到内存中也是二进制(32位),64位的电脑安装时,CPU从内存读取64位的指令,实际软件只占32位的指令,其余为空指令,能成功!!!

注:以后慢慢都是64位的操作系统

8、CPU的重点总结---->面试!

(1)CPU的功能:控制+运算

(2)CPU的工作方式:取指令→分析→执行

(3)CPU从哪取数据?内存

(4)×86_64的含义?×86是一种CPU的指令集,64指:(64位)是CPU一次能从内存中读取的最大指令集

9、计算机最核心的硬件:CPU、存储器(内存+硬盘),这三个分别干啥事?

(1)CPU是具体干活的,来执行其他程序

(2)内存和硬盘都是存储设备

(2)_1内存优点:速度快;缺点:无法永久保存数据

(2)_2硬盘优点:能永久保存数据,断电后数据仍存在;缺点:速度慢

10、CPU从内存中读取指令集,但是等待指令集的时间是浪费的,怎么提高效率呢

或者提问为:CPU对于下一条指令仍然要用到的数据,若仍从内存中取,则等待时间浪费,怎么提高效率呢

析:此时若想提升CPU效率,就是缩短等待时间(即输入/输出时间  I/O时间),因此想要一个存储速度>内存的存储设备,所以用寄存器【其材质和CPU相同,但是价格贵】

总结:因访问内存以得到指令或数据的时间比CPU执行指令花费的时间要长的多

So 所有CPU内存都有一些用来保存关键变量和临时数据的寄存器。

So:此时:CPU可以用寄存器中读取指令数据,降低等待时间(I/O时间),提高效率。

PS:寄存器的造价太贵,所以容量较小,常用来保存关键变量和临时数据   【寄存器在CPU内部】

三、存储器

1、理想化的存储器:速度快+容量大+价格便宜    【速度快就降低了CPU等待存储器的延迟】

CPU主要从内存中存取数据,但为了减少CPU与内存之间的速度差(即:CPU等待内存的时间),则采用以下解决方法:

(1)CPU马上要用到的关键数据存放在寄存器中;

(2)有可能经常访问的数据,将其存放在高速缓存中。

【寄存器+高速缓存---->降低I/O时间,让CPU更快的从内存获取数据】

2、存储计量单位

8bit=1Bytes    1024Bytes=1KB   1024KB=1MB  1024MB=1GB  1024GB=1TB  1024TB=1PB

【但是:实际买的硬盘若为8G,格式化后没有8GB】

因为硬盘生产商的计量单位是:1GB=1000MB=1000*1000KB=1000*1000*1000Bytes=1000*1000*1000*8bit

3、存储器分为:RAM(被称为主存)可读可写     特点:易失存储性,断电后数据全部消失

                         ROM只读,不能当主存   特点:断电后数据不消失

ROM常用于存放:机器一出场就已经写好的程序(比如主板上的BIOS程序就存储在ROM中)

4、EEPROM(Electrically Erasable PROM0)称为“电可擦除可编程ROM”    and     闪存(flash memory)

【注:这两者的特点:可读可写+永久存储(断电后也存在)】                  

速度:内存>闪存>磁盘

特点:都是可读可写,但是内存中的数据只有通电时存在,但是闪存和磁盘的数据都能永久存储。

5、还有一类存储器:CMOS   特点:易失性(断电就消失)

CMOS主要存储:当前时间和日期;配置的参数(比如:哪一个是启动磁盘) 

【BIOS程序中的配置的参数存储在CMOS中】

注:CMOS由一小块电池供电,若想重置BIOS参数,就把电池抠下来,且CMOS存储器断电数据消失。====>没有绝对的安全!!!

6、问:操作系统软件是存放在磁盘中的,但是具体放在哪呢?!

注:若回答C盘,是×。因为C盘、D盘、E盘....是一块硬盘分区的概念。

该问题的实质:什么样的程序用来控制机器一通电的流程呢?

答:BIOS程序(Basic Input Output System,基本的输入输出程序),它存放在ROM中。

【一开机,机器就去读BIOS程序中设置的数据,来控制计算机开机阶段的运行,通过BIOS程序中设置的Windows操作系统软件在哪个盘,可知道其具体位置。(一般都是C盘啦~~~)】

【若裸机没有安装Windows操作系统之前,实际就是带有一套操作机制的!此时:BIOS为操作系统,CMOS为BIOS的硬盘】

四、磁盘【专门介绍】

平均寻道时间:5ms   【受限于目前硬件水平】【即:平均寻找磁道的时间→机械手臂如何滑到你指定的磁道的时间

但是滑到磁道上就能找到需要的数据???

No!!!因为:磁道是一个圈,一圈中可能某个点开始是我的数据!So与磁道本身的转速也有关!!!

平均延迟时间:4ms  平均延迟时间→转半圈花费的时间【针对:磁盘的转速为:7200转/min,其余转速的磁盘可通过下面的方法自己推算】

析:7200转/min 磁盘1分钟转7200圈,转一圈花费时间60/7200=0.008s=8ms,则转半圈花费时间4ms

在磁盘上寻找数据时:1)首先机械手臂先滑到指定磁道上;【平均寻道时间:5ms】;

                                  2)在正确磁道上后,根据磁盘本身的转动,再在该道上找到我需要的数据【平均延迟时间:4ms】。

So:在磁盘上找数据,必须要有9ms的延迟!!!【因此:磁盘慢就慢在9ms的延迟!!!后面的读取速度很快!!!】

若做一次I/O,即:把指令发给硬盘,硬盘就把数据加载到内存。

误解:磁盘找到数据后,把数据往内存上读的时候,这段时间慢===>这是错的!!!

把数据往内存上读的时候,这段时间不会慢,因为:硬盘、CPU、内存全部连在主板上,主板上连接线之间的通信速度是光速!!!

磁盘的延迟实际就是:寻道时间+磁盘本身的转速

注:实际上本小节只是基于“一次I/O”就能把数据读完,这是不能的!!!对于一盘的磁盘来说,一次I/O只能读取512个扇区。

读一次大文件,需要很多I/O,So有很多延迟,9ms的延迟会被方法!!!

五、总结

1、计算机的存储设备分为:内部存储设备(断电数据消失)=>内存

                                           外部存储设备(断电数据不消失)=>外存

2、内部存储器(主要是:内存)=>存储信息速度快,断电后存储内容全部消失

3、外部存储器(主要是:磁盘)=>内存信息不受断电影响,速度比内存慢

磁盘分为:硬盘(主要):容量大、存储信息量大、一般在机箱里

                 软盘(次要):容量较小、存储信息量小、一般在机箱外

PS:一般说磁盘都是指硬盘

4、存取信息的速度:内存>硬盘>软盘

5、在计算机的主板上有一个基本的输入输出设备(Basic Input Output System,BIOS)

BIOS就相当于一个小的操作系统,它有底层的I/O软件,包括:读键盘、写屏幕、进行磁盘I/O,该程序存放在CMOS中。

BIOS的启动流程:   【重要!】

(1)计算机加电;

(2)BIOS开始运行,检测硬件:CPU、内存、硬盘等;

(3)BIOS读取CMOS存储器中的参数,选择启动设备;

(4)从启动设备上读取第一个扇区的内容(MBR主引导记录512直接,前446为引导字节,后64位分区信息,最后两个为标志位);

(5)根据分区信息读入BootLoader启动装载模块,启动操作系统;

(6)然后操作系统询问BIOS,以获得配置信息

【注:自己理解:对于每种设备,系统会检查其设备驱动程序是否存在。如果没有,系统则会要求用户按照设备驱动程序。一旦有了全部的设备驱动程序,操作系统就将他们调入内核,然后初始有关的表格(比如进程),创建需要的进程,并在每个终端上启动登录程序或GUI】

转载于:https://my.oschina.net/pansy0425/blog/3026202

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值