zoukankan      html  css  js  c++  java
  • 计算机组成原理

    计算机组成原理

    计算机分为五大组成部分,分别为:控制器、运算器、存储器、输入设备和输出设备。其中控制器+运算器是计算机的中央处理器(CPU),相当于人类的大脑。

    一、控制器

    计算机的指挥系统。大脑指挥全身的器官运作,但是大脑不会随意的指挥身体行动,大脑只有在接受指令后才会控制身体行动。

    二、运算器

    运算器是计算机的运算系统。大脑除了指挥,无时无刻还在运算。即实现算术运算和逻辑运算。

    1. 算术运算:1+1=2
    2. 逻辑运算:碰到疯狗,表白?

    三、控制器+运算器(计算机的中央处理器cpu))

    吃饭流程示例。

    1. 当你吃饭的时候,大脑会接受吃饭的指令,之后把指令翻译成你身体需要进行的动作(控制器)
    2. 如果吃的是西餐,则使用勺子;如果吃的是中餐,则使用筷子(运算器)。

    003-计算机组成原理-吃饭流程.gif

    四、存储器

    计算机的存储系统。需要注意的是:无论是内存还是外存,计算机存储的数据格式都是01,01的形式,0和1由电压的电频控制(了解知识点)。计算机的存储的一个二进制单位称为1bit,8bit=1Bytes称为一个字节,1024Bytes=1KB,1024KB=1MB,1024MB=1GB,1024GB=1TB,1024TB=1PB。

    [003-计算机组成原理-计算机存储单位转换.jpg?x-oss-process=style/watermark

    [003-计算机组成原理-存储器分类.jpg?x-oss-process=style/watermark

    4.1内存(主存)

    内存是计算机内临时存储数据的硬件设备。由于内存读取数据速度较快内存,CPU下达的指令会直接传输给内存,即CPU会与内存直接交互。常见的内存有内存条。

    1. 优点(较于外存):
      1. 存取速度快。
    2. 缺点(较于外存):
      1. 容量小。
      2. 由于内存基于电存储数据,因此断电数据马上会消失。

    4.2 外存

    外存是计算机内永久存储数据的硬件设备,由于外存容量大,所以外存主要用于存储软件等占用量大的数据。当需要使用外存上的某个软件时,CPU下达的指令需要传输给内存后,内存再从外存中读取软件信息,即CPU不与外存直接交互。常见的外存有磁带、磁盘和u盘等。

    1. 优点(较于内存):
      1. 容量大
      2. 可以永久存储数据。
    2. 缺点(较于内存):
      1. 存取速度慢。

    五、 cpu+内存+外存(计算机的三大核心组件)

    电脑打开QQ流程示例。

    1. 双击QQ图标,CPU先向内存发出取指的命令(CPU+内存)
    2. 内存从硬盘中取出 运行QQ 的指令(硬盘)
    3. 控制器分析 运行QQ 的指令并告知运算器工作(控制器)
    4. 运算器进行一系列的算术运算和逻辑运算打开QQ,并从硬盘从读取QQ的代码至内存(运算器+内存+硬盘)
    5. 计算机在内存中运行QQ的代码(内存)
    6. 如果此时从QQ好友接受一个文件并下载,该文件将会永久保存在硬盘中(硬盘)
    7. 关闭QQ时CPU向内存发出关闭QQ的指令,内存关闭QQ并清理内存中QQ的代码(内存)

    六、输入设备

    计算机输入信息(程序、数据、声音、文字、图形、图像等)的设备。

    常见的输入设备有:键盘、鼠标、图形扫描仪、触摸屏、条形码输入器、光笔等。外存储器(U盘等)也是一种输入设备。

    七、输出设备

    计算机输出信息的设备。

    常见的输出设备有:显示器、打印机和绘图仪等。外存储器也是一种输出设备。

    注意:由于外存储器即是一种输入设备,也是一种输出设备,因此外存储器也被称为IO设备,其中I为Input(输入);O为Output(输出)

    八、计算机五大组成部件补充

    8.1 cpu相关

    多核CPU:多个CPU,电脑可以同时干多件事,如4核CPU的电脑可以同时干四件事。

    X86-64位:X86是CPU的一种型号,64表示CPU每次能取64位二进制数。X86-32表示CPU每次取32位二进制数。CPU具有向下兼容性,即64位电脑能下载32位的软件,而32位的软件下载64位的软件会丢失数据。

    8.2存储器相关

    ROM存储器:ROM只读存储器(不可写)在工厂中就被编程完毕,然后再也不能修改。它一般存放BIOS(Basic input output system)程序,该程序一般用于启动计算机,或用于处理底层设备的控制。

    CMOS存储器:CMOS存储器由一块电脑内置的电池驱动供电,它一般用来保持当前时间和日期的更新,也就是说,即使计算机没有充电,时间也会持续更新;同时它也可以存储启动磁盘的路径。(装机的时候一般会告诉计算机操作系统在计算机中的位置,如C:/)

    8.3 总线

    总线相当于人类的神经、血管,连接计算机的所有硬件设备。

    003-计算机组成原理-总线架构.jpg?x-oss-process=style/watermark

    8.4 启动计算机流程

    1. 计算机加电。
    2. BIOS开始运行,检测硬件:CPU、内存、硬盘灯。
    3. BIOS读取CMOS存储器中的参数,选择启动设备等。
    4. 从启动设备上读取第一个扇区的内容。
    5. 根据分区信息读入bootloader启动装载模块,启动操作系统。
    6. 操作系统询问BIOS,获得配置信息。对于每种设备,系统会检查其设备驱动是否存在,如果没有,系统则会要求用户按照设备驱动程序,一旦有了全部的设备驱动程序,操作系统则会将它们调入内核,然后初始有关的表格(如进程表)。

    8.5 硬盘工作原理

    如今市场上的硬盘分为机械硬盘和固态硬盘两大类,我们将从这两大类出发和同学们介绍硬盘的工作原理

    8.6 机械硬盘

    机械硬盘主要由机械手臂、磁道和扇区组成,接下来我们将从这三个方面展开介绍机械硬盘的工作原理。

    [003-计算机组成原理-机械硬盘.jpg?x-oss-process=style/watermark

    • 机械手臂:机械硬盘通过机械手臂读取数据,机械手臂的末端是磁头。
    • 磁道:磁道是机械硬盘的磁面中的一个一个圈,磁道用于存储数据。
    • 扇区:扇区的最小单位通常为512KB(由于磁盘大小不断增大,也有部分厂商设定每个扇区的大小是4096字节)。为了减小IO操作,机械硬盘也会将多个相邻的扇区组合在一起,形成一个块,这个块便就是我们在Windows系统中看到的C、D分区。
    • 平均寻道时间:由于数据存放在磁道上,因此机械手臂需要读取数据首先要找到磁道。受限于工业水平的限制,目前机械手臂找到磁道的时间为5ms,这个时间被称为平均寻道时间。
    • 平均延迟时间:机械手臂寻道之后,需要寻找数据。由于数据的位置是不确定的,而目前的机械硬盘寻找数据会从硬盘的头部扫描到尾部。以7200r/min的硬盘为例,如果碰巧在硬盘头部找到数据,时间约为0ms;如果在硬盘尾部找到数据,时间约为8.3ms,因此我们采用一个平均时间4.15ms作为机械手臂在磁道找到数据的时间,这个时间被称为平均延迟时间。

    平均延迟时间:

    		* 7200/60=120(r/s)
    		* 1/120=0.0083(s/r)=8.3(ms/r)
    		* 8.3/2=4.15(ms/r)
    

    从上述描述可以得出:

    寻找数据的时间=平均寻道时间+平均延迟时间寻找数据的时间=平均寻道时间+平均延迟时间

    8.7 固态硬盘

    随着人们对数据需求增多,存储系统的瓶颈越来越明显。而在嵌入式领域移动设备和工业自动化控制等恶劣环境下,传统硬盘机械结构已经无法满足要求,而所有这一切随着固态存储(SSD)的到来而发生了改变。

    [003-计算机组成原理-机械和固态硬盘.jpg?x-oss-process=style/watermark

    传统的机械硬盘(HDD)运行主要是靠机械驱动头,包括马达、盘片、磁头摇臂等必需的机械部件,它必须在快速旋转的磁盘上移动至访问位置,至少95%的时间都消耗在机械部件的动作上。SSD却不同机械构造,无需移动的部件,主要由主控与闪存芯片组成的SSD可以以更快速度和准确性访问驱动器到任何位置。传统机械硬盘必须得依靠主轴主机、磁头和磁头臂来找到位置,而SSD用集成的电路代替了物理旋转磁盘,访问数据的时间及延迟远远超过了机械硬盘。SSD有如此的“神速”,完全得益于内部的组成部件:主控--闪存--固件算法。SSD通过这套组成部件,让数据以电荷的方式存储在每个NAND存储单元内。

    上面讲了这么多,牢记一点:固态硬盘是基于固态电子(SSD,断电数据也会保留)和算法实现数据存储的。

    在当下的阶段,必将由程序员来主导,甚至比以往更甚。
  • 相关阅读:
    出现java.lang.UnsupportedClassVersionError 错误的原因
    java.lang.NoClassDefFoundError: javax/transaction/SystemException
    Hibernate参考文档学习笔记——Hibernate入门(二)
    图解Ant安装配置
    Hibernate参考文档学习笔记——Hibernate入门(一)
    scanf用在gets等函数之前会出现什么问题
    转向Web
    大道至简
    xdebug远程调试Vagrant虚拟机中web程序的注意点
    多个ssh private key的管理办法
  • 原文地址:https://www.cnblogs.com/randysun/p/11246515.html
Copyright © 2011-2022 走看看