目录
- 前言
- 计算机硬件的组成和分类
- 冯.诺依曼结构的基本思想
- 运算器
- 存储器
- 控制器
- 程序和指令
- 控制器的基本任务
- 指令流和数据流
- 适配器与I/O设备输入设备
- 计算机软件的组成与分类
- 计算机系统的层次结构
- 计算机系统的性能指标
- 软硬件逻辑的等价性
前言
计算机组成原理这门课可以说是计算机专业最重要的基础,身为计算机专业非常重要,所以需要自己好好琢磨,不要应付考试。
计算机硬件的组成和分类
计算机硬件系统的主要组成为五大部分,分别为存储器、运算器、控制器、输入设备和输出设备。
简述一下计算机的工作原理,假设要用计算机来计算一道数学题,计算机存储器先把数学题记录下来,存储了题的原始信息,运算器对存储的数据进行加减乘除运算,而控制器控制着整个计算过程,输入设备把原始解题信息送到计算机,输出设备把运算结果呈现出来。
典型的冯诺依曼计算机结构
冯.诺依曼结构的基本思想
- 程序和数据以二进制编码,以二进制方式存储在存储器中的,二进制编码也是计算机能够所识别和执行的编码。
- 程序、数据和指令序列,都是事先存在存储器中,以便于计算机在工作时能够高速地从存储器中提取指令并加以分析和执行。
- 确定了计算机的五个基本组成部分:运算器、控制器、存储器、输入设备、输出设备。
- 早期的冯·诺依曼机以运算器为中心,最根本的特征是采用“存储程序”原理,基本工作方式是控制流驱动方式。
现代的计算机组织结构
以存储器为中心
运算器
运算器是计算机的执行部件,用于对数据进行加工处理。
运算器进行算数运算和逻辑运算(ALU)。
计算机通常采用二进制数运算,因为只有0和1两个数,可以表示电压的高低,脉冲的有无,电子器件很容易实现。
存储器
存储器是计算机的存储部件,用于存放程序和数据。
数据存放在存储器之前就已经变成了二进制的代码,存储也也是全是二进制代码,目前采用半导体器件来存储,这是因为半导体触发器有0和1两个状态,可以记忆一个二进制代码,如果一个数用16位二进制代码表示,就需要16个触发器,这16个触发器称为存储单元,存储器是由许多存储单元组成的,每个存储单元都有编号,称为地址。
存储容量:存储器所有存储单元的总数,单位有KB、MB等等
外存储器:存储容量更大的磁盘存储器和光盘存储器
所以半导体存储器也称为内存存储器,简称内存。
控制器
控制器是计算机的指挥中心,由其控制各部件自动协调地进行工作。
程序和指令
进行复杂的计算操作不只能用运算器计算,还需要用到控制器控制每一条运算步骤。
指令:进行运算的每一条简单的加减乘除等基本操作。
一系列指令序列称为计算程序,简称程序。
每条指令有着明确的目标,让存储器知道从哪个存储单元取出数据,并进行何种操作,所以指令由两部分组成,即操作码和地址码,分别表示操作的性质和操作数的地址。
注意操作码也是用二进制表示,如加法指令的操作码为001。
存储程序:指令数码化之后可以存入存储器,与数据分开存储,将指令序列存储在存储器中称为存储程序。存储程序按地址顺序执行,这就是冯诺依曼计算机的设计思想。
冯诺依曼结构:指令和数据放在同一个存储器
哈佛结构:指令和数据分别放在两个存储器
显然哈佛结构的计算机速度更快。
多种的基本指令构成了计算机的指令系统,指令系统是衡量计算机性能的重要标志。
控制器的基本任务
控制器的基本任务:按照一定的顺序一条接着一条取指令、指令译码、执行指令。
取指周期与执行周期:分别为取指令的一段时间和执行指令的一段时间。
运算器和控制器通常组合在一个集成电路芯片中,称为中央处理器(CPU)。
指令流和数据流
控制器完全可以区分开哪些是指令字,哪些是数据字。一般来讲,取指周期中从内存读出的信息流是指令流,它流向控制器;而在执行器周期中从内存读出的信息流是数据流,它由内存流向运算器。
适配器与I/O设备输入设备
把人们所熟悉的某种信息形式变换为机器内部所能接收和识别的二进制信息形式输出设备:把计算机处理的结果变换为人或其他机器设备所能接收和识别的信息形式适配器(接口):它使得被连接的外围设备通过系统总线与主机进行联系,以便使主机和外围设备并行协调地工作。
计算机软件的组成与分类
计算机软件分为两大类:系统程序与应用程序
系统程序用来简化程序设计,包括4类
- 各种服务性程序:诊断、排错等
- 语言程序:汇编、编译、解释等
- 操作系统
- 数据库管理系统
应用程序是用户利用计算机来解决某些问题而编制的程序
如工程设计程序、数据处理程序、自动控制程序、企业管理程序、情报检索程序、科学计算程序。
计算机系统的层次结构
第1级:微程序设计级,由机器指令直接执行微指令,如果应用程序是用微指令编写的,那么在这一级就可以运行。
第2级:一般机器级,也称机器语言级,由微程序解释机器指令系统。
第3级:操作系统级,由操作系统程序实现,这些操作系统由机器指令和广义指令组成,广义指令是操作系统定义和解释的软件指令,这一级也成混合级。
第4级:汇编语言级,给程序人员提供一种符号形式语言,以减少程序编写的复杂性。这一级由汇编程序支持和执行。
第5级:高级语言级,它是面向用户的,为方便用户编写应用程序而设置的。这一级由各种高级语言编译程序支持和执行。
计算机系统的性能指标
吞吐量:一台计算机在某一时间间隔内能够处理的信息量,单位是字节/秒(B/S)
响应时间:从输入有效到系统产生响应之间的时间度量,用时间单位来度量,例如微秒(10-6S)、纳秒(10-9S)。
利用率:表示在给定的时间间隔内,系统被实际使用的时间所占的比率,用百分比表示。
机器字长:指处理机运算器中一次能够完成二进制数运算的位数。如8位、16位……
总线宽度:一般指运算器与存储器之间进行互连的内部总线的二进制位数。
存储器容量:存储器中所有存储单元的总数,如KB、MB、GB、TB、PB、EB。
存储器带宽:存储器的速度指标,单位时间内从存储器读出的信息量,一般用字节数/秒(B/S) 表示。
主频/时钟周期:CPU的最小单位,CPU的工作节拍受主时钟控制。主时钟的频率(f)叫CPU的主频。单位有MHz、GHz 时钟周期T=1/f
CPI:执行一条指令所需要的时钟周期数。
MIPS:平均每秒执行多少百万条顶点指令数。
FLOPS:每秒执行多少浮点运算。
计算
CPU执行时间:执行一段程序所占用的CPU时间
CPU执行时间= 总时钟数 Nc × 时钟周期 T
总时钟数Nc = 执行一条指令所需要的时钟周期数(CPI) x 指令总条数(lc)
CPU执行时间 = CPI × Ic × T
MIPS = 指令条数/执行时间 x 10^6 = 时钟频率/CPI x 10^6
FLOPS = 程序中的浮点操作数/程序执行时间
软硬件逻辑的等价性
- 随着大规模集成电路技术的发展和软件硬化的趋势,计算机系统的软、硬件界限已经变得模糊了。因为任何操作可以由软件来实现,也可以由硬件来实现;任何指令的执行可以由硬件完成,也可以由软件来完成。
- 任何操作可以由软件来实现也可以用硬件来实现(设计计算机系统时,应考虑各个方面的因素:价格、速度、可靠性、存储容量、变更周期)
- 实体硬件机功能的扩大
- 固件的概念(功能上是软件,形态上是硬件)