408计算机组成原理学习笔记——计算机系统概述

目录

1.计算机硬件的基本组成

1.1.计算机硬件组成部分

1.2.冯诺依曼计算机的特点

1.3.现代计算机的特点

2.主存储器的基本组成

2.1.MAR和MDR

2.2.存储单元、存储字长和存储字

2.3.运算器的基本组成

2.4.控制器的基本组成

2.5.计算机工作过程

3.计算机系统的层次结构

4.计算机的性能指标

4.1.存储器的性能指标

4.2.CPU的性能指标


1.计算机硬件的基本组成

1.1.计算机硬件组成部分

1.存储程序:将指令以二进制代码的形式存入计算机的主存储器,顺序执行

2.输入设备:将程序和数据以机器所能识别的方式输入计算机(信息转化)

存储器:存放程序和数据

运算器:执行算数运算和逻辑运算

输入设备:将计算机运算结果转换为人类所熟悉的方式(信息转化)

控制器:指挥程序运行

①控制器从存储器中取指令(加减乘除)

②对运算器进行控制进行该指令

③将结果放回存储器

3.软件和硬件在逻辑上是等效,但是软件效率低,价格低,硬件效率高,价格高(乘法)

1.2.冯诺依曼计算机的特点

1.计算机由五大部件组成:运算器、控制器、存储器、输入设备、输出设备

2.指令和数据以同等地位存入存储器,按照地址寻址

3.指令和数据用二进制表示

4.指令由操作码和地址码存放组成

操作码:指明该指令进行的具体操作。加减乘除

地址吗:该指令的操作数存放在存储器中的具体地址,对其进行访存操作

5.存储程序

6.以运算器为中心:输入和输出的数据都需要经过运算器(现代计算机以存储器为中心)

1.3.现代计算机的特点

1.以存储器为中心(提升效率,输入和输出数据无须再必须经过运算器)

2.运算器和控制器集合成CPU

3.控制器控制运算器进行操作(加减乘除),控制主存储器的读写和控制I/O设备启动/停止

4.主存储器和CPU进行数据交换(指令),指令送往控制器,运行期对操作数进行相应操作

5.I/O设备和主存储器直接进行数据交换

6.存储器分为主存(主存储器,算为主机)和辅存(硬盘,算为I/O设备)

2.主存储器的基本组成

2.1.MAR和MDR

1.MAR(Memory Address Register):存储地址寄存器(存地址)

2.MDR(Memory Data Register):存储数据寄存器(存数据)

3.取:①将数据的地址存入MAR中

②控制器发出取指令

③根据MAR存放的地址,取出数据放到MDR中

4.存:①将数据想要存放的地址放在MAR中,数据放在MDR

②控制器发出指令,是存操作

③把MDR中的数据存入MAR相应地址

2.2.存储单元、存储字长和存储字

1.存储体会被分为若干个存储单元,每个地址对应一个存储单元,若MAR想要地址为1的存储单元的数据,存入MAR的地址为1(二进制存储,具体位数根据情况)

2.存储单元:每个存储单元存放一串二进制代码(外部看)

3.存储字:存储单元存放的二进制代码的组合(内部看)

4.存储字长:存储单元中二进制代码的位数(8bit的整数倍)

5.存储元:存储二进制的电子元件,每个存储元可存1bit,多个存储元构成一个存储单元

6.MAR位数反映存储单元的个数(位数即次方数),MDR位数 = 存储字长(存储单元内的数据取出后需要存放在MDR内,因此大小相同)

eg:MAR为4位→共有2 ^ 4个存储单元(4位最多能表示2 ^ 4个数字)

MDR为16位→每个存储单元可以存放16bit,即一个存储字为16bit,存储字长为16bit

2.3.运算器的基本组成

1.运算器作用:实现逻辑运算(与或非)和算数运算(加减乘除)

2.组成部分:

ACC(Accumulator):累加器,用于存放操作数或者运行结果

MQ(Multiple-Quotient):乘商寄存器,在乘、除运算时,用于存放操作数或者运行结果

ALUArithmetic and Logic Unit):算数逻辑单元,通过电路实现算术运算和逻辑运算

X:通用寄存器,用于存放操作数(可能会有多个)

2.4.控制器的基本组成

1.组成部分:

CU(Control Unit):控制单元,分析指令,给出控制信号(控制其他部件)

IR(Instruction Register):指令寄存器,存放当前执行的指令

PC(Program Counter):程序计数器,存放下一条指令的地址,有自动加“1”的功能

2.完成一条指令的过程:取指令(PC)→分析指令(区分操作码和地址码)(IR)→执行指令(分析操作码,确定具体操作)(CU)

前两个阶段为取指令,第三个阶段为执行

2.5.计算机工作过程

CPU区分指令和数据的依据:指令周期的不同阶段(取指令→分析指令→执行指令)

①初始情况:

1.主存地址为存储单元的编号

2.地址0-4存储机器指令,分为操作码和地址码,共16bit

3.地址5-8分别存储变量a、b、c、y的数据(二进制)

②执行过程

()为寄存器内的内容,M为主存储器

初始化:(PC)= 0,指向第一条指令的存储位置

1.(PC)→MAR,导致(MAR) = 0:PC的内容通过地址总线存放到MAR

2.控制器向主存储器表明接下来访问地址为0的数据,并且通过控制总线告诉主存储为读操作

3.M(MAR)→MDR,导致(MDR) = 000001 0000000101:主存储器根据MAR存放的地址从存储体中取出相应数据,并放到MDR中

4.(MDR)→IR,导致(IR)=000001 0000000101 :MDR通过数据总线将MDR存放的内容存放到IR中

5.OP(IR)→CU,指令的操作码送到CU,CU分析后得知这是“取数”命令

6.Ad(IR)→MAR,指令的地址码送到MAR,导致(MAR)= 5

7.M(MAR)→MDR,导致(MDR)= 0000 0000 0000 0010 = 2

8.(MDR)→ACC,导致(ACC)= 0000 0000 0000 0010 = 2

1-4为取指令,5为分析指令,6-8为执行指令(取指令完成后,PC自动加1,指向下一条指令

此时,(PC)= 1,(ACC) = 2

1.(PC)→MAR,导致(MAR) = 1

2.M(MAR)→MDR,导致(MDR) = 000100 0000000110

3.(MDR)→IR,导致(IR)= 000100 0000000110(取指令完成,PC + 1)

4.OP(IR)→CU,指令的操作码送到CU,CU分析后得知,这是乘法指令(分析指令完成)

5.Ad(IR)→MAR,指令的地址码送到MAR,导致(MAR)= 6

6.M(MAR)→MDR,导致MDR = 0000 0000 0000 0011 = 3

7.(MDR)→MQ,导致MQ = 0000 0000 0000 0011 = 3

8.(ACC)→X,导致(X) = 2:执行乘法操作时,将操作数放到X寄存器中

9.(MQ)*(X)→(ACC),导致(ACC)= 6:通过CU控制ALU实现(执行指令完成

此时,(PC) = 2,(ACC) = 6

1.(PC)→MAR,导致(MAR)= 2

2.M(MAR)→MDR,导致(MDR)= 000011 0000000111

3.(MDR)→IR,导致(IR)= 000011 0000000111(取指令完成,PC+1

4.OP(IR)→CU,指令的操作码送到CU,CU分析后得知,这是加法指令(分析指令完成)

5.AD(IR)→MAR,指令的地址码送到MAR,导致(MAR) = 7(指明C存放的地址)

6.M(MAR)→MDR,导致(MDR)= 0000 0000 0000 0001

7.(MDR)→X,导致(X)= 0000 0000 0000 0001

8.(ACC)+(X)→ACC,导致(ACC)= 7,由ALU实现加法运算(执行指令完成

此时,(PC)= 3,(ACC)= 7

1.(PC)→MAR,导致(MAR)= 3

2.M(MAR)→MDR,导致(MDR)= 000010 0000001000

3.(MDR)→IR,导致(IR)= 000010 0000001000(取指令完成,PC+1

4.OP(IR)→CU,指令的操作码送到CU,CU分析后得知,这是存数指令(分析指令完成)

5.AD(IR)→MAR,指令的地址码送到MAR,导致(MAR) = 8

6.(ACC)→MDR,导致(MDR)= 7

7.(MDR)→地址为8的存储单元,导致 y = 7(执行指令完成)

此时,(PC)= 4

1.(PC)→MAR,导致(MAR)= 4

2.M(MAR)→MDR,导致(MDR)= 000110 000000-000

3.(MDR)→IR,导致(IR)= 000110 0000000000(取指令完成,PC+1

4.OP(IR)→CU,指令的操作码送到CU,CU分析后得知,这是停机指令(分析指令完成)

5.操作系统进行后续操作

3.计算机系统的层次结构

1.高级语言:面向用户。C/C++

2.汇编语言:高级语言通过编译程序翻译成汇编语言

3.机器指令:通过汇编程序将汇编语言翻译成机器指令

4.微指令:机器指令进一步分解为微指令,硬件直接执行微指令

5.汇编语言和机器指令一一对应

6.若需要调库,则需要链接,即将文件和库文件结合

7.预处理→编译→汇编→链接

8.编译程序:将高级语言编写的源程序全部语句一次全部翻译成机器语言程序(.exe文件)(只需翻译一次

解释程序:将源程序的一条语句翻译成对应的机器语言的语句,并立即执行,接着翻译下一句(每次执行都要翻译

4.计算机的性能指标

4.1.存储器的性能指标

1.总容量 = 存储单元个数 * 存储字长 bit = 存储单元个数 * 存储字长 / 8 Byte

2.可以通过MAR和MDR计算总容量

MAR代表存储单元个数(最多),MDR代表存储字长

eg:MAR为32位,MDR为8位→总容量 = 2 ^ 32 * 8 = 4GB

4.2.CPU的性能指标

1.主频(HZ):数字脉冲信号振荡的频率

时钟周期(微妙,纳秒):主频的倒数,执行指令的每个动作至少需要1个时钟周期

2.CPIClock cycle Per Instruction):每条指令的执行需要几个时钟周期(可能会变化),通常取平均值

3.CPU执行时间:CPU时钟周期数 / 主频 = (指令条数)* CPI / 主频

4.IPS(Instruction Per Second):每秒执行多少个指令。IPS = 主频 / CPI(MIPS)

5.FLQPS(Floating-point Operations Per Second):每秒执行多少次浮点运算

K:10 ^ 3→M:10 ^ 6→G:10 ^ 9→T:10 ^ 12→P:10 ^ 15→E:10 ^ 18→Z:10 ^ 21

6.数据通路带宽:数据总线一次所能并行传送数据的位数

7.吞吐量:单位时间内处理请求的数量

8.响应时间:用户发出请求,到系统对其做出反应并得到结果的时间

评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值