计算机组成基础概念

本文详细介绍了计算机的分类,包括SISD、SIMD、MISD和MIMD,以及计算机的发展历程,从电子管到晶体管,再到集成电路。提到了微处理器的进化,如8080到Pentium IV,以及计算机硬件和软件的发展,如操作系统和编程语言的演变。此外,还阐述了冯·诺依曼计算机的特点,存储器的工作原理以及计算机性能指标,如容量、速度和MIPS等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.计算机分类

一.按照实现方式分类

在这里插入图片描述

二.按照指令流和数据流分类

1.单指令流&单数据流(SISD):冯诺依曼体系结构

在这里插入图片描述

2.单指令流&多数据流(SIMD):阵列处理器、向量处理器
在这里插入图片描述
3.多指令流&单数据流(MISD):无

4.多指令流&多数据流(MIMD):多处理器、多计算机
在这里插入图片描述

二.计算机发展方向

发展阶段时间逻辑元件速度(次/秒)内存外存
第一代1946-1957电子管几千-几万汞延迟线、磁鼓穿孔卡片、纸袋
第二代1958-1964晶体管几万-几十万磁芯存储器磁带
第三代1964-1971中小规模电路几十万-几百万半导体存储器磁带、磁盘
第四代1972-至今大规模、超大规模集成电路千万-万亿半导体存储器磁带、磁盘、光盘、半导体存储器

一.逻辑元件

在这里插入图片描述
CPU内部由很多单元的逻辑元件组成,逻辑元件的大小决定了整个系统的大小。如,由几百亿个逻辑元件组成的CPU,逻辑元件减小一点点,CPU就会减小很多

1.电子管

第一台数字计算机ENIAC,占地面积170平,包含17468根真空管,使用机器语言

2.晶体管

第一台使用晶体管线路的计算机TRADIC,包含800只晶体管,使用面向过程语言FORTRAN

3.中小规模集成电路

在这里插入图片描述
高级语言迅速发展,分时操作系统开始出现

4.大规模、超大规模集成电路
在这里插入图片描述
产生微处理器,新概念:并发并行、流水线、高速缓存、虚拟存储器… …

二.计算机硬件的发展

1.微处理器的发展

微处理器机器字长年份晶体管数目
80808位1974
808616位19792.9w
8028616位198213.4w
8038632位198527.5w
8048632位1989120w
Pentium64位(准)1993310w
Pentium pro64位(准)1995550w
Pentium II64位(准)1997750w
Pentium III64位(准)1999950w
Pentium IV64位20003200w

机器字长:CPU一次整数运算处理的二进制最大位数,与CPU内寄存器的位数有关。如,8字长位的机器,想要处理16位运算,那么需要先将16位的先分成两个8位的,再做运算
在这里插入图片描述
操作系统位数:其所依赖的指令集的位数

2.硬件的发展
在这里插入图片描述
摩尔定律:揭示了信息技术进步的速度,集成电路上可容纳的晶体管数目,约每隔18个月便会增加一倍,整体性能也将提升一倍

二.计算机软件的发展

阶段语言特点
第一阶段机器语言使用穿孔卡片
第二阶段汇编语言(符号语言)符号代替了机器语言的二进制码
第三阶段高级语言(C、C++、Java…)一种接近于人们使用习惯的程序设计语言

三.计算机层次结构

一.计算机系统组成

在这里插入图片描述

1.控制器(Control):是整个计算机的中枢神经,其功能是对程序规定的控制信息进行解释,根据其要求进行控制,调度程序、数据、地址,协调计算机各部分工作及内存与外设的访问等。

2.运算器(Datapath):运算器的功能是对数据进行各种算术运算和逻辑运算,即对数据进行加工处理。

3.存储器(Memory):存储器的功能是存储程序、数据和各种信号、命令等信息,并在需要时提供这些信息。

4.输入(Input system):输入设备是计算机的重要组成部分,输入设备与输出设备合称为外部设备,简称外设,输入设备的作用是将程序、原始数据、文字、字符、控制命令或现场采集的数据等信息输入到计算机。

5.输出(Output system):输出设备与输入设备同样是计算机的重要组成部分,它把计算机的中间结果或最后结果、机内的各种数据符号及文字或各种控制信号等信息输出出来。

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

在这里插入图片描述

三.计算机工作过程

一.功能部件-运算器、控制器

在这里插入图片描述

1.运算器

MQ乘商寄存器(Multiple-Quotient Register)

ACC累加器(Accumulator)

ALU算数逻辑单元(Arithmetic and Logic Unit):与、或、非、异或等

X操作寄存器

PSW程序状态寄存器(Program Status Word)

ACC被加数、和被减数、差乘积高位被除数、余数
MQ乘数、乘数低位
X加数减数被乘数除数

2.控制器

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

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

PC程序计数器(Program Counter):存放指令地址有自动加1功能

二.读取指令

在这里插入图片描述
操作方式

  • M:主存中某存储单元
  • ACC、MQ、X、MAR、MDR…:相应寄存器
  • M(MAR):取存储单元中的数据
  • (ACC)…:取相应寄存器中的数据
  • 指令:操作码+地址码
  • OP(IR):取操作码
  • Ad(IR):取地址码

操作:

(PC) ——> MAR
M(MAR)——> MDR
(MDR)——>IR
取指令结束
OP(IR)——>CU
分析指令结束
Ad(IR)——>MAR
M(MAR)——>MDR
(MDR)——>ACC
执行指令结束

CPU区分指令和数据的依据:指令周期的不同阶段

四.软件系统

在这里插入图片描述

系统软件:管理整个计算机系统使系统资源得到合理调度,如操作系统(OS)、数据库管理系统(DBMS)、语言处理程序…

应用软件:使用系统软件提供的资源接口,完成用户的特定任务。如QQ、WX、酷狗语言…

五.编程语言

1.机器语言

二进制代码 0000,0000,000000010000

第一段二进制决定指令操作内容(0000:LOAD、0001:STORE…),第二段二进制决定数据寻找的地址,第三段二进制决定数据存放地址

2.汇编语言

助记符 LOAD A,16 ——>汇编程序(汇编器)——>机器语言

如,16号单元数据与17号单元数据相加存回17号单元:
LOAD A,16
LOAD B,17
ADD C,A,B
STORE C,17

3.高级语言

C/C++、Java

c=a+b
——>编译程序(编译器)——>汇编语言

——>解释程序——>机器语言

六.五层结构

在这里插入图片描述

七.冯·诺依曼计算机

在这里插入图片描述
存储程序:将指令以代码的形式事先输入到计算机主存储器中,然后按其在存储器中的首地址执行程序的第一条指令,以后就按照该程序的规定顺序执行其他指令,直至程序执行结束。

1.计算机硬件系统由运算器、存储器、控制器、输入设备和输出设备5大部件组成。
2.指令和数据以同等地位存于存储器内,并可按地址寻访。
3.指令和数据均用二进制代码表示。
4.指令由操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置。
5.指令在存储器内按顺序存放。通常,指令是顺序执行的,在特定条件下,可根据运算结果或根据设定的条件改变执行顺序。
6.早期的冯·诺依曼机以运算器为中心,输入/输出设备通过运算器与存储器传送数据。

八.存储器

在这里插入图片描述
MAR(memory address register)主存地址寄存器:用来保存数据被传输到的位置的地址或者数据来源位置的地址。

MDR(memory data register)主存数据寄存器:用来保存要被写入地址单元或者从地址单元读入的数据。
在这里插入图片描述
在这里插入图片描述
读取操作:外部会将地址传入MAR中,MAR会根据地址在CU的控制下,找到存储体中对应的存储单元并将数据拷贝到MDR中(先读取到MDR),随后MDR在CU的控制下将数据拷贝到外部需要的位置(再由MDR将数据传递给外部)

写入操作:外部会将地址传入MAR中,MAR会将地址传递给存储体,告知存储器接下来要往地址对应的存储单元写入数据,随后外部会将数据拷贝至MDR(先传递给MDR),再由MDR将数据传递给存储体(再写入到存储单元)

四.计算机性能指标

一.容量

系统支持的最大容量=2^n * 存储字长

因为n个二进制位可以组合的状态有2^n个,如:
1位:0,1
2位:00,11,01,10
… …

二.速度

在这里插入图片描述
所以并不是机器字长越长,CPU执行速度越快,必须综合考虑CPU时钟周期和平均CPI

MIPS (Million Instructions Per Second),即每秒执行多少百万条指令。
MIPS = 指令条数/(执行时间×10^6) = 主频/CPI

MFLOPS (Mega Floating-point Operations Per Second),即每秒执行多少百万次浮点运算。
MFLOPS = 浮点操作次数/(执行时间×10^6)

GFLOPS (Giga Floating-point Operations Per Second),即每秒执行多少十亿次浮点运算。
MFLOPS = 浮点操作次数/(执行时间×10^9)

TFLOPS (Tera Floating-point Operations Per Second),即每秒执行多少万亿次浮点运算。
MFLOPS = 浮点操作次数/(执行时间×10^12)

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

吞吐量:指系统在单位时间内处理请求的数量。
它取决于信息能多快地输入内存,CPU能多快地取指令,数据能多快地从内存取出或存入,以及所得结果能多快地从内存送给一台外部设备。这些步骤中的每一步都关系到主存,因此,系统吞吐量主要取决于主存的存取周期。

响应时间:指从用户向计算机发送一个请求,到系统对该请求做出响应并获得它所需要的结果的等待时间。
通常包括CPU时间(运行一个程序所花费的时间)与等待时间(用于磁盘访问、存储器访问、IO操作、操作系统开销等时间)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

愛沢かりん

感谢您对我的支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值