计算机组成与系统结构第一课(计算机系统概述)

计算机系统的概述

计算机系统 = 硬件 + 软件

软件:

  • 系统软件:用来管理整个计算机系统
  • 应用软件:按任务需要编制成的各种程序

硬件:

​ 逻辑元件的更新:

  1. 第一阶段:电子管
  2. 第二阶段:晶体管
  3. 第三阶段:中小规模集成电路
  4. 第四阶段:大规模,超大规模集成电路

计算机硬件的基本组成

早期的冯诺伊曼结构(冯诺伊曼机)

计算机组成与系统结构第一课(计算机系统概述)

特点:

  • 计算机由五大部件组成
  • 指令和数据以同等地位存于存储器,可按地址寻访
  • 指令和数据都用二进制表示
  • 指令由操作码和地址码组成
  • 存储程序,将指令和程序提前存入存储器中
  • 以运算器为中心

现代计算机的结构

CPU = 运算器 + 控制器

计算机组成与系统结构第一课(计算机系统概述)

现代计算机以存储器为中心

各个硬件的工作原理

1. 主存储器

构成:

  • 存储体
  • MAR(Memory Address Register)
  • MDR(Memory Data Register)

目前这两个寄存器一般都集成在CPU中

大致过程:

CPU想要取得一个数据,它把想要的数据写到MAR存储地址寄存器中去,主存储器根据MAR中的信息找到相应的数据,再写入MDR存储数据寄存器中去,最后通过数据线路传给CPU

MAR位数反应存储单元的个数,MDR位数 = 存储字长

例:MAR = 4位 =====> 2^4个存储单元

2. 运算器

用于实现算术运算(加减乘除),逻辑运算(与或非)

构成:

  • ACC:累加器,用于存放操作数,或运算结果
  • MQ:乘商寄存器,在乘,除运算时,用于存放操作数或者操作结果
  • x:通用的操作数寄存器,用于存放操作数
  • ALU:算术逻辑单元,通过内部复杂的电路实现算术运算,逻辑运算

3. 控制器

CU:控制单元,分析指令。给出控制信号

IR:指令寄存器,存放当前执行的指令

PC:程序计数器,存放下一条指令地址,有自动加一功能

计算机系统的多层次结构

高级语言:C/C++,Java,pyhton等

汇编语言:助记符

机器语言:二进制代码

高级语言通过编译程序(编译器)成汇编语言,再通过汇编程序(汇编器)成为机器语言

编译程序:将高级语言编写的源程序全部语句一次全部翻译成机器语言程序,而后再执行机器语言的程序(只需翻译一次)

解释程序:将源程序的一条语句翻译成对应于机器语言的语句,并立即执行。紧接着翻译下一句(每次执行都要翻译)

计算机的性能指标

  • 总容量

    总容量 = 存储单元个数 x 存储字长 bit = 存储单元个数 x 存储字长/8 Byte

    e.g. MAR为32位,MDR为8位,总容量 = 2^32 * 8 bit = 4GB

  • CPU的性能指标

    CPU主频:CPU内数字脉冲信号振荡的频率

    CPU时钟周期:每个脉冲信号的时间(与CPU主频互为倒数)

    CPI:执行一条指令所需的时钟周期数(可变的)

    执行一条指令的耗时 = CPI x CPU时钟周期

    CPU执行时间(整个程序的耗时) = CPU时钟周期数/主频 = (指令条数 * CPI)/ 主频

    IPS:每秒执行多少次指令 = 主频 / 平均CPI

    FLOPS:每秒执行多少次浮点运算

上一篇:20190327 Redis主从同步、三台服务器部署,基于sentinel实现redis主从切换


下一篇:Redis踩坑系列(二)Spark批量Load大量数据到Redis,主从同步问题