冯 · 诺依曼结构计算机工作原理及层次结构分析
<1> 冯 · 诺依曼简介
- 提出"离散变量自动电子计算机方案" - EDVAC(Electronic Discrete Variable Automatic Computer)
- 计算机之父
- 20世界最重要的数学家之一
- 美国科学院院士(现代计算机、博弈论等领域重大贡献)
<2> 冯 · 诺依曼计算机的工作原理
- 存储程序 - 将程序存放在计算机的存储器中 - 存储系统构建与快速访问
- 程序控制 - 按指令地址访问存储器并取出指令,经译码依次产生指令执行所需的控制信号,实现对计算的控制,完成指令的功能 - 指令系统、控制器设计等
<3> 冯 · 诺依曼计算机的组成(硬件 软件)
1. 硬件系统(总体图)
- 主机:CPU(运算器 控制器)、内存
- 外设:输入设备、输出设备、外存储器
- 总线:地址线、数据线、控制线
(1)硬件系统 - 运算器
- 算数运算:加、减、乘、除法等
- 逻辑运算:与、或、非、移位等
- 基本结构 - ALU(Arithmetic Logical Unit):算术逻辑运算单元 - 寄存器 - 连接通路
注重功能与结构的关系 --- 指令、数据类型、性能要求等等
(2)硬件系统 - 控制器
- 产生指令执行过程所需要的所有控制信号,控制相关功能部件执行相应操作
- 控制信号的形式 - 电平信号 - 脉冲信号
- 产生控制信号的依据 - 指令 - 状态 - 时序
- 控制信号的产生方式 - 微程序 - 硬布线
(3)硬件系统 - 存储器
- 功能 - 存储原程序、原数据、运算中间结果
- 工作方式 - 读/写
- 工作原理 - 按地址访问,读/写数据
(4)硬件系统 - 输入/输出设备
- 输入设备 - 向计算机输入数据(键盘、鼠标、网卡、扫描仪等)
- 输出设备 - 输出处理结果(显示器、声卡、网卡、打印机等)
2. 软件系统
对软件的理解
可运行的思想和内容的数字化
思想:算法、规律、方法 --- 程序表达
内容:图形、图像、数据、声音、文字等被处理的对象
软件的表现形式:程序和数据(以二进制表示的信息)
软件的核心:算法
- 系统软件 - 如操作系统、网络系统和编译系统
- 支持软件 - 开发工具、界面工具
- 应用软件 - 字处理软件:office - 游戏软件
3. 硬件与软件系统间的关系
- 相互依存 - 硬件是软件运行的基础 - 软件的正常运行是硬件发挥作用的重要途径
- 逻辑等效性 - 某些功能既可有硬件实现,也可由软件实现
- 协同发展 - 软件随硬件技术的迅速发展而发展 - 软件的不断发展与完善又促进硬件的更新 - 两者密切地交织发展,缺一不可
<4> 计算机的层次结构
- 不同用户处在不同层次
- 不同层次具有不同属性
- 不同层次使用不同工具
- 不同层次的代码效率不同
1. 透明性概念
- 本来存在的事物或属性,从某个角度去看,却好像不存在
- 如硬件的特性对C语言程序设计者而言就具有透明性
2. 系统观
- 当硬件结构发生变化时要想到可能对软件产生的影响
- 不同类型的软件对硬件有不同的要求
- 编程的CPU硬件相关性,编程应查阅对应CPU的编程手册
3. 软硬件的分界线
- 分界线在哪里? - 指令集架构层
- 分界线即软、硬件的接口,是指令操作硬件的接口
- 指令格式及指令的设计与硬件关联 程的CPU硬件相关性,编程应查阅对应CPU的编程手册
3. 软硬件的分界线
- 分界线在哪里? - 指令集架构层
- 分界线即软、硬件的接口,是指令操作硬件的接口
- 指令格式及指令的设计与硬件关联