一、绪论
计算机组成在计算机知识结构中所处的位置
计算机体系结构与组成的区别 体系结构规定了软件和硬件的接口,哪些功能应该由软件实现,哪些由硬件实现。
组成则是根据体系结构规定的硬件实现的要求,使用哪些元件,什么样的物理结构来实现。
也就是说,体系结构像指挥官,告诉组成去实现哪些指令,所以,从另一个角度,也就是程序员的角度来思考,就是体系结构是面向程序员的,他可以使用什么样的指令进行编程,来实现想要的功能,体系结构向上屏蔽了硬件实现细节,比如说实现寄存器0与寄存器1的数值相加,程序员知道这台机器提供了这样的指令,直接用来编程即可,具体是使用什么样的元件,什么样的连接,并不关心,只要有这样的功能就好了,这样的抽象,很大程度上屏蔽了复杂性;计算机组成则更多的是面向硬件工程师,要考虑采用什么样的元件来实现,如何提升效率,还要考虑电气特性等等。
二、以运算器为中心的计算机和以存储器为中心的计算机
1、冯·诺依曼计算机
冯·诺依曼计算机的特点
- 计算机由五大部件组成
- 指令和数据以同等地位存于存储器, 可按地址寻访
- 指令和数据用二进制表示
- 指令由操作码和地址码组成
- 存储程序
- 以运算器为中心
冯诺依曼计算机组成硬件框图
2、存储器为中心的计算机
以存储器为中心的计算机硬件框图
现代计算机硬件框图
现代计算机复杂性的管理方法-3Y
- 层次化(hierachy):将被设计的系统划分为多个模块或子模块。
- 模块化(Modularity):有明确定义的功能和接口
- 规则性(regularity):模块更容易被重用。
计算机的工作步骤
- 建立模型
- 确定方法
- 编制程序
指令格式:操作码+地址码
计算ax^ 2 + bx + c 程序清单
三、基本组成
1、存储器的基本组成
存储器的基本构成:存储体【大楼】------存储单元【房间】------存储元件(0/1)【床位(无人/有人)】
存储单元:存放一串二进制代码
存储字:存储单元中二进制代码的组合
存储字长:存储单元中二进制代码的位数
每个存储单元赋予一个地址号,按地址寻访。
2、运算器的基本组成及操作过程
运算器的基本组成及操作过程
(1)加法的操作过程
(2)减法的操作过程
(3)乘法的操作过程
(4)除法的操作过程
3、控制器的基本组成
四、操作的完整过程
1、计算机完成一条指令的过程------以取数指令为例
计算机完成取数指令的详细过程
PC(程序计数器)选取指令---1--->从MAR(地址寄存器)中获取的地址---2--->从存储体中获取数据---3--->把数据存入MDR(数据寄存器)---4--->存入IR(指令寄存器)
---5--->操作码送入CU(控制单元)---6--->CU根据操作的指令从IR中把地址码送入MAR(地址寄存器)---7--->从存储体中获取数据---8--->把数据存入MDR(数据寄存器)
---9--->送入ACC(累加器)中
2、计算机完成一条指令的过程------以存数指令为例
计算机完成存数指令的详细过程
PC(程序计数器)选取指令---1--->从MAR(地址寄存器)中获取的地址---2--->从存储体中获取数据---3--->把数据存入MDR(数据寄存器)---4--->存入IR(指令寄存器)
---5--->操作码送入CU(控制单元)---6--->CU根据操作的指令从IR中把地址码送入MAR(地址寄存器)---8--->把ACC中的运算结果放入到MDR(数据寄存器)中---9--->把数据存入存储体中