第一章 计算机系统概述

分类与发展方向

计算机的分类

按照用途分类

  • 电子模拟计算机;
  • 电子数字计算机;
  • 通用计算机;
  • 专用计算机;

按照指令流和数据流分类

  • 单指令流单数据流 SISD:冯诺依曼体系结构;
  • 单指令流多数据流 SIMD:阵列处理器、向量处理器;
  • 多指令流单数流 MISD实际上不存在;
  • 多指令流多数据流 MIMD:多处理器、多计算机;

按照驱动方式分类

  • 控制流驱动:即指令控制数据的存取(冯诺依曼结构)(冯诺依曼架构是控制流驱动)
  • 数据流驱动:先将需要的数据准备齐全,然后指令运行;

微型计算机的发展以微处理器技术为标志。

计算机的结构

  • 软件系统和硬件系统共同构成了完整的计算机系统;
  • 某一功能,既可以使用软件实现,又可以使用硬件实现,则称在软硬件在逻辑上是等效的;使用硬件解决效率更高;

计算机的组织架构

冯诺依曼架构

  1. 冯诺依曼架构最重要的意义在于提出了存储程序的基本思想;

  2. 由五部分组成

    运算器 控制器 存储器 输入设备 输出设备
  3. 指令与数据等地位存储,形式上没有区别,按址寻访;

  4. 指令与数据均由二进制代码表示;指令由操作码与地址码组成;

  • 指令顺序存放执行,特殊条件下可以改变执行顺序
  • 早期的冯诺依曼机以运算器为核心;现代计算机组织结构中以存储器为核心
  • 存储程序的基本思想:将程序和原始数据编写好以后放入主存才能够执行;一旦程序启动执行,就无需操作人员干预,计算机自动执行,直到程序执行结束;
  • MAR 与 MDR 应是存储器功能的一部分,但是现在计算机将其放到了 CPU 中;

图示 描述已自动生成

图示 描述已自动生成

计算机的多层次结构

  • 下层是上层的基础,上层是下层的扩展;
  • 软件与硬件没有明确的分界线,软件和硬件在逻辑上是等效的。
软件
硬件
高级语言机器 M4 汇编语言机器 M3 操作系统机器 M2 机器语言机器 M1 微程序机器 M0
编译程序 汇编程序生成机器语言 用机器语言解释操作系统 用微指令解释机器指令 硬件直接执行微程序

计算机的硬件组成

图示 描述已自动生成

存储器

图片包含 图形用户界面 描述已自动生成

图示 描述已自动生成

  • MAR 和 MDR 逻辑上位于主存,实际上位于 CPU,依靠总线与主存进行通讯。
  • 按字编址:每个地址指向一个完整的字长
  • 按半字编址:每个字节指向半个字长
CPU
运算器
  • ALU:算数逻辑单元,是运算器的核心
  • MQ:乘商寄存器 ACC:累加器;
  • X:操作数寄存器;
  • PSW:程序状态寄存器

图示 描述已自动生成

控制器
  • PC:程序计数器,存放当前欲执行指令的地址,可以自动加一形成下一条指令的地址,直接连接 MAR;
  • IR:指令寄存器,存放当前准备执行的指令,内容来自 MDR;指令中的操作码 OP(IR)送至 CU,指令中的地址码 AD(IR)送往 MAR,取操作数;
  • CU:控制单元。

CPU 区分数据和指令依靠指令周期的不同阶段

指令执行的数据流向

取指令阶段 (PC)→MAR M(MAR)→MDR (MDR)→IR

分析指令阶段 OP(IR)→CU

取数阶段 AD(IR)→MAR M(MAR)→MDR M(MDR)→ACC

计算机软件

三个级别的语言: 高级语言--> 汇编语言--> 机器语言

  • 汇编程序(汇编器):将汇编语言翻译成机器语言;
  • 解释程序(解释器):将源程序中的语句按照执行顺序逐句翻译成机器语言并立即执行;
  • 编译程序(编译器):将高级语言程序翻译成汇编语言程序或机器语言程序;

从源程序到可执行文件的过程:

预处理器
编译器
汇编器
链接器
链接器
hello.c
源程序
文本
hello.i
修改过的源程序
文本
hello.s
汇编程序
文本
holle.o
重定位目标文件
二进制文件
printf.o
库文件
二进制
可执行目标文件
二进制
系统软件与应用软件
  • 系统软件是保证系统高效、正确运行的基础软件,主要有操作系统 OS、数据库==管理==系统 DBMS、语言处理程序、分布式软件系统、网络软件系统、标准库程序、服务性程序等;

计算机的性能指标

  • 字长:计算机进行一次整数运算,所能够处理的二进制数据的位数;与 CPU 内部寄存器、加法器位数有关,字长一般等于内部寄存器的位宽;

  • 数据通路带宽:数据总线一次所能并行传送信息的位数

    • 数据通路:各个子系统通过数据总线连接形成的数据传输路径称为数据通路;
    • ==数据总线是指 CPU 外部数据总线==,与 CPU 内部寄存器位宽可能会不同;
  • 主存容量

  • MAR 的位数反映了可寻址的最大范围,但不一定是实际存储容量(例如,64 位计算机,寻址空间很大,但是有的计算机接了 8G 内存,有的计算机接了 16G 内存)

  • 运算速度

    • 响应时间:指从用户向计算机发送一个请求,到系统对该请求做出响应并获得它所需要的结果的等待时间。

      • 通常包括 CPU 时间(运行一个程序所花费的时间)与等待时间(用于磁盘访问、存储 器访问、I/O 操作、操作系统开销等时间)。
    • 吞吐量:系统在单位时间内处理请求的数量;

      它取决于信息能多快地输入内存,CPU 能多快地取指令,数据能多快地从内存取出或 存入,以及所得结果能多快地从内存送给一台外部设备。这些步骤中的每一步都关系 到主存,因此,系统吞吐量主要取决于主存的存取周期。

  • 主频和时钟周期:主频越高,计算机运算速度越快;

  • CPI:执行一条指令所需要的周期数;每条指令需要的周期数不同,因此指平均值;

  • IPC:每个时钟周期运行多少条指令,是 CPI 的倒数;

  • MIPS:每秒执行多少百万条指令数;该指标存在缺陷(指令集不同,其每条指令的功能也不同,复杂指令集的指令实现的功能更加复杂,消耗的时间也比精简指令集长,不能说明复杂指令集不如精简指令集);(从该指标可以猜测,指令执行以 us 为单位)

  • MFLOPS、GFLOPS、TFLOPS、PFLOPS、EFLOPS、ZFLOPS

    • MFLOPS:每秒执行多少百万次浮点数运算
    • GFLOPS:每秒执行多少十亿次浮点数运算
    • TFLOPS:每秒执行多少万亿次浮点数运算
    • PFLOPS:每秒执行多少千万亿次浮点数运算
    • EFLOPS:每秒执行多少百亿亿次浮点数运算
  • 基准程序:专门用来进行性能评价的一组程序;该指标存在缺陷(因为有可能指令集专门针对某种运算进行优化,导致性能表现很好;)

  1. 描述存储容量时,K 表示 210,M 表示 220,G 表示 230,T 表示 240
  2. 描述频率时,K 表示 103,M 表示 106,G 表示 109,T 表示 1012

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...