第一章 计算机系统基本概念

第一章

计算机系统简介

计算机由软件和硬件组成

软件:具有特定功能的程序

  • 系统软件
    • 操作系统
    • 语言处理程序
    • 服务性程序
    • 数据库管理系统
    • ...
  • 应用软件:满足各种需求的程序

硬件:计算机的实体


计算机系统层次结构

语言 操控的对象 执行
高级语言 虚拟机器 用编译程序翻译成汇编语言
汇编语言 虚拟机器 用汇编程序翻译成机器语言
操作系统 虚拟机器 用机器语言解释操作系统
指令 实际机器 用微指令解释机器指令
微指令 微程序机器 由硬件直接执行机器指令

解决计算机系统复杂性的方法:

  • 抽象:用高级模型代替低级实体
  • 层次化:将系统分为多个子模块
  • 模块化:有明确定义的功能和接口
  • 规则性:模块更容易被重用

计算机的基本组成

冯诺依曼结构:控制器,处理器,存储器,输入设备,输出设备

冯诺依曼结构的特点:

  • 计算机由五大部件组成
  • 指令和数据以同等地位存储在存储器中,按地址访问
  • 指令和数据用二进制表示
  • 指令由操作码和地址码构成
  • 以运算器为中心

冯诺依曼结构示意图:(实线代表数据通路,虚线代表控制指令)

冯诺依曼结构的局限:

  1. 以运算器为中心,运算器成为制约计算机速度的瓶颈
  2. 缺少层次化的特征

改进:以存储器为中心,层次化设计

现代计算机示意图:

硬件层次化结构:

  • 主机
    • CPU
      • 运算器(ALU)
      • 控制器(CU)
    • 主存
  • I/O 设备
    • 辅存
    • 输入设备
    • 输出设备

存储器的基本组成

  • 存储体
  • MAR
  • MDR

存储体 \(\rightarrow\) 存储单元(存放一串二进制代码)\(\rightarrow\) 存储元件(存放一位二进制)

存储字:存储单元中二进制代码的组合

存储字长:存储字的长度

MAR:存储器地址寄存器,反映存储单元的个数

MDR:存储器数据寄存器,反映存储字长

存储器空间计算:\(2^n\times l\),n 是 MAR 位数,l 是存储字长

运算器的基本结构

  • 运算器的核心部件:ALU

  • 输入寄存器:ACC,X

  • 输出寄存器:ACC,MQ(如果需要额外的位)

注意:不同类型的计算机结构不同

运算器操作过程

ACC MQ X
加法 被加数和 加数
减法 被减数差 减数
乘法(移位加法) 乘积高位 乘数/乘积低位 被乘数
除法(移位减法) 被除数/余数 除数

乘法操作过程(默认被乘数在 ACC ):

  1. 指令 乘 M
  2. 把 M 中的内容送到 MQ 寄存器
  3. 把 ACC 内容送到 X
  4. ACC 清零
  5. 累加,高位送入 ACC,低位送入 MQ

操作是有先后的,由控制器控制

由于 MQ 只在乘法和除法中使用,所以又叫乘商寄存器

控制器的基本结构

控制器的功能:解释指令,保证指令按序执行

  • PC(程序计数器):保存当前将要执行指令的地址,具有计数功能,\(PC+1 \rightarrow PC\)
  • IR(指令寄存器):存放当前将要执行的指令
    CU(控制单元):控制各个部件执行按顺序指令

运算器,控制器和存储器一起就构成了主机

主机完成一条指令的过程(以取数指令为例)

  1. 取指令:PC 把指令的地址送给 MAR,MAR 控制存储体将指令取出送给 MDR,MDR 送给 IR
  2. 分析指令:将 IR 中指令操作码送给 CU,CU 分析指令
  3. 执行指令:将 IR 中的地址码取出送给 MAR,MAR 控制存储体将对应地址数据取出送给 MDR,MDR 将数据送入 ACC

计算机硬件的主要技术指标

机器字长:CPU 一次能够处理数据的位数,与 CPU 中的寄存器位数有关

运算速度

  • 主频
  • 核数,每个核支持的线程数
  • 吉普森法:每条指令的时间乘以频率的平均值 \(T_M=\sum\limits_{i=1}^{n}{f_it_i}\)
    • 静态平均:从指令表计算
    • 动态平均:根据程序执行过程计算
  • CPI 执行一条指令所需时钟周期数
  • MIPS 每秒执行百万条指令
  • FLOPS 每秒浮点运算次数

存储容量

  • 主存容量
    • 存储单元个数 x 存储字长
    • 字节数
  • 辅存容量
    • 字节数
posted @ 2024-01-13 20:19  DrinkLessMilkTea  阅读(54)  评论(0)    收藏  举报