计组学习笔记之计算机系统概述

1 什么是计算机系统

  • 软件

    • 系统软件:用来管理整个计算机系统
      • 操作系统、数据库管理系统、标准程序库、网络软件...
    • 应用软件:按照任务所需编写的各种程序
      • 微信、QQ、微博、B站...
    • 发展:机器(汇编)语言、Fortran、Pascal、C、C++、Java、php...
  • 硬件

发展阶段 时间 逻辑元件 速度(次/秒) 内存 外存
一代 1946—7957 电子管 几千—几万 汞延迟线、磁鼓 穿孔卡片、纸带
二代 1958—1964 晶体管 几万—几十万 磁芯存储器 磁带
三代 1964—1971 中小规模集成电路 几十万—几百万 半导体存储器 磁带、磁盘
四代 1972—至今 大规模、超大规模集成电路 上千万—万亿 半导体存储器 磁带、磁盘、光盘、半导体存储器

2 冯诺依曼机

  • 早期冯诺依曼机结构

冯诺依曼

  • 冯诺依曼计算机的特点
    • 计算机由五大部件组成:输入设备、输出设备、存储器、控制器、运算器
    • 指令和数据以同等地位存于存储器,可按地址寻访
    • 指令和数据都用二进制表示
    • 指令由操作码和地址码组成
    • 可以存储程序
    • 运算器为中心(现代计算机都以存储器为中心)
  • 现代计算机结构

现代计算机01

现代计算机02

3 各个硬件部件

3.1 硬件组成

硬件组成

3.2 主存储器
  • 主存储器的构成

    主存储器构成

  • 构成

    • 存储体:数据在存储体内按照地址存储

      存储体的构成

    • MAR(Memory Address Register):存储地址寄存器,其位数反映存储单元的个数(例如 MAR = n 位,则总共有 2n 个存储单元)

    • MDR(Memory Data Register):存储数据寄存器,其位数反应每个存储字长(例如 MDR = 16位,则每个存储单元可以存放 16bit)

  • 有关概念

    • 存储单元:每个存储单元存放一串二进制代码
    • 存储字:存储单元中二进制代码的组合
    • 存储字长:存储单元中二进制代码的位数
    • 存储元:存储二进制的电子元件,每个存储单元可以存储 1bit
3.3 运算器
  • 运算器的构成

    运算器的构成

  • 构成

    • ACC(Accumulator):累加器,用于存放操作数、运算结果
    • MQ(Multiple-quotient Register):乘商寄存器,在乘、除运算时,存放操作数、运算结果
    • X:通用的操作数寄存器,用于存放操作数
    • ALU(Arithmetic and Logic Unit):算术逻辑单元,通过内部复杂的电路实现算术运算、逻辑运算,是运算器的核心
3.4 控制器
  • 控制器的构成

    控制器构成

  • 构成:

    • CU(Control Unid):控制单元,分析指令,给出控制信号,控制器的核心
    • IR(Instruction Register):指令寄存器,存放当前执行的指令
    • PC(Program Counter):程序计数器,存放下一条指令的地址,有自动加一功能

4 计算机系统层次结构

计算机系统层次结构

5 计算机的性能指标

5.1 存储器的性能指标
  • n 个二进制位可以表示 2n 种不同的状态
  • 210:K     220:M     230:G     240:T
  • MAR:存储地址寄存器,其位数反映存储单元的个数
  • MDR:存储数据寄存器,其位数反应每个存储字长
5.2 CPU 的性能指标
  • CPU 主频:CPU内数字脉冲信号震荡的频率
  • CPU 时钟周期:脉冲信号中相邻两个波峰(波谷)所经历的时间(单位为微秒、纳秒)
  • CPU 主频(时钟频率)= 1 / CPU 时钟周期 (单位:Hz)
  • CPI(Clock cycle Per Instruction):执行一条指令所需要的时钟周期数(不同的指令下 CPI 不同,甚至同一指令下,CPI 也可能不同)
  • 执行一条指令的耗时 = CPI * CPU 时钟周期数
  • CPU 执行时间(整个程序耗时)= CPU 时钟周期数 / 主频 = (指令条数 * CPI)/ 主频
  • IPS(Instructions Per Second):每秒执行多少条指令
    • KIPS:每秒执行几千条条指令
    • MIPS:每秒执行几百万条指令
  • IPS = 主频 / 平均 CPI
  • FLOPS(Floating-point Operations Per Second):每秒执行多少次浮点运算
    • KFLPOS:每秒执行几千次浮点运算(K = 千 = 103
    • MFLOPS:每秒执行几百万次浮点运算(M = 百万 = 106
    • GFLOPS:每秒执行几十亿次浮点运算(G = 十亿 = 109
    • TFLOPS:每秒执行几万亿次浮点运算(T = 万亿 = 1012
5.3 系统整体性能指标
  • 数据通路带宽:数据总线一次所能并行传输的二进制信息位数
  • 吞吐量:系统在单位时间内处理请求的数量
  • 响应时间:从用户向计算机发送一个请求开始,到系统对该请求做出响应并获得所需结果的等待时间

6 本章总结

点击看总结

posted @   悟道九霄  阅读(400)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示