1.1 计算机的发展

什么是计算机系统?

  • 计算机系统=硬件+软件
    • 系统软件:用来管理整个计算机系统(eg:操作系统、数据库管理系统、标准程序库(DBMS)、网络软件、语言处理程序(高级语言——>低级语言)、服务程序(调试代码用的程序))
    • 应用软件:按照任务需要编制成的各种程序
  • 计算机性能的好坏取决于硬件与软件的总和

硬件的发展

  • 1946——第一台电子数字计算机:ENIAC,标志着电子管时代的到来
    • 占地170m^2
    • 耗电量150kW
    • 运算速度 5000次加法/s
    • 采用电子管作为基本逻辑器件(1.8W个)
  • 1947——贝尔实验室发明晶体管,标志着晶体管时代的到来
    • 晶体管的体积、功耗更小
    • 出现了面向过程的程序设计语言fortran,有了操作系统雏形
  • 1958——第一款集成电路问世,标志着中小规模集成电路时代的到来
    • 体积、功耗进一步降低,可靠性提高
    • 计算机主要用于科学计算
    • 高级语言迅速发展,同时出现了分时操作系统
  • 大规模、超大规模集成电路时代
    • 开始出现微处理器、微型计算机、PC萌芽
    • 操作系统涌现(Macos、Linux、Windows……)

软件的发展

编程语言

  • 机器语言
  • 汇编语言(需要关心机器的各种特性)
  • 高级语言(不需要关心机器的各种特性)
    • C++
    • Pascal
    • Fortran……

操作系统

DOS、Windows、Macos、Android……

目前的发展趋势——“两极分化”

  • 一极为微型计算机更微型化、网络化、高性能、多用途(比如我们日常的电子设备)
  • 一极是巨型计算机向更巨型化、超高速、并行处理、智能化方向发展(比如神威·太湖之光,每秒可以支持9.3亿亿次的浮点运算)

1.2

早期冯·诺伊曼计算机

  • ENIAC需要手动接线来控制计算,这样效率非常低,受限于接线员接线的速度,急需改进

  • 冯诺伊曼提出“存储程序”的概念:将指令以二进制代码的形式事先输入到计算机的主存储器,然后按其在主存储器中的首地址执行程序的第一条指令,以后就按照该程序的规定顺序执行其他指令,直到程序执行结束

  • 第一台采用冯·诺伊曼体系结构的计算机EDVAC

  • 冯诺伊曼体系结构

    image-20221231114028414
  • 冯诺伊曼计算机的特点

    • 计算机由五大设备组成:输入设备、输出设备、存储器、运算器、控制器
    • 指令和数据以同等地位放在存储器之中,可以按照地址进行访问
    • 指令和数据用二进制表示
    • 指令由操作码和地址码组成
    • 以运算器为中心
  • image-20221231114704004

主存储器的基本组成

image-20221231115612157
  • 存储体
  • MAR(memory address register——存储地址寄存器)
  • MDR(memory data register——存储数据寄存器)
image-20221231115719955
  • MAR的位数反映了存储单元的个数,MDR的位数反映了每个存储单元的大小

运算器的组成

image-20221231120649976

控制器的组成

image-20221231120946544

计算机的工作过程

image-20221231123917010

<img src="计算机组成原理/image-20221231131317877.png" alt="image-20221231131317877" style="zoom: 33%;" />

计算机系统的层次结构

image-20221231132044004 image-20221231132359202 image-20221231132645871

1.3 计算机的性能指标

存储器的性能指标

image-20221231135039223

CPU的性能指标

image-20221231135715721

CPI(clock cycle per instruction):执行一条机器指令所需要的时钟周期

IPS(instruction per second):每秒执行的指令数量

FLOPS(floating-point operations per second):每秒指令的浮点操作

系统整体的性能指标

image-20221231140546210 image-20221231140615897 image-20221231140847923

参考资料