文章目录
注:内容参考王道2024考研复习指导
计算机发展历程
计算机系统层次结构
早期冯诺依曼机
“存储程序”的概念是指将指令以二进制代码的形式事先输入计算机的主存储器,然后按其在存储器中的首地址执行程序的第一条指令,以后就按该程序规定的顺序执行其他指令,直至程序执行结束。
在计算机系统中,软件和硬件在逻辑上是等效的。
Eg:对于一个乘法运算,可以设计一个专门的硬件电路实现乘法运算;也可以用软件的方式,执行多次加法运算来实现。
冯·诺依曼计算机的特点
- 计算机由五大部件组成
- 指令和数据以同等地位存于存储器,可按地址寻访
- 指令和数据用二进制表示
- 指令由操作码和地址码组成
- 存储程序
- 以运算器为中心(输入/输出设备于存储器之间的数据通过运算器完成)
现代计算机的结构
现代计算机,以存储器为中心
CPU=运算器+控制器
输入设备,将信息转换成机器能识别的形式
输出设备,将结果转换成人们熟悉的形式
主存储器,存放数据和程序
运算器,算数运算、逻辑运算
控制器,指挥各部件使程序运行
各个硬件的工作原理
主存储器的基本组成
MAR(Memory Address Register)存储地址寄存器,例:MAR=4位,则总共有 2 4 2^4 24个存储单元
MDR(Memory Data Register)存储数据寄存器,例:MDR=16位,则每个存储单元可以存放16bit,1个字(word)=16bit
注:1个字节(Byte)=8bit,1B=1个字节,1b=1bit
存储单元,每个存储单元存放一串二进制代码
存储字(word),存储单元中二进制代码的组合
存储字长,存储单元中二进制代码的位数
存储元,即存储二进制的电子元件,每个存储元可存1bit
运算器的基本组成
运算器:用于实现算数运算(加减乘除)、逻辑运算(与或非)
ACC :累加器,用于存放操作数,或运算结果
MQ:乘商寄存器,在乘、除运算时,用于存放操作数或运算结果
X:通用的操作数寄存器,用于存放操作数
ALU:算数逻辑单元,通过内部复杂的电路实现算数运算、逻辑运算
以下是不同操作下各部件可能存储的值:
控制器的基本组成
CU(Control Unit):控制单元,分析指令,给出控制信号
IR(Instruction Register):指令寄存器,存放当前执行的指令
PC(Program Counter):程序计数器,存放下一条指令地址,有自动加1功能
计算机的工作过程
上一条指令取指后PC自动+1(完成地址为0的指令),(PC)=1:执行后,(ACC)=2
- (PC)→MAR,导致(MAR)=1
- M(MAR)→MDR,导致(MDR)=0001000000000110
- (MDR)→IR,导致(IR)=0001000000000110
- OP(IR)→CU,指令的操作码送到CU,CU分析后得知,这是“乘法”指令
- Ad(IR)→MAR,指令的地址码送到MAR,导致(MAR)=6
- (MAR)→MDR,导致(MDR)=0000000000000011=3
- (MDR)→MQ,导致(MQ)=0000000000000011=3
- (ACC)→X,导致(X)=2
- (MQ)*(X)→ACC,由ALU实现乘法运算,导致(ACC)=6,如果乘积太大,则需要MQ辅助存储
计算机软件
系统软件和应用软件
应用软件是为了解决某个应用领域的问题而编制的程序
系统软件负责管理硬件资源,并向上层应用程序提供基础服务
三种级别的语言
注::编译器、汇编器、解释器,可统称“翻译程序”。
软件和硬件的逻辑功能等价性
软件和硬件的逻辑功能等价性:同一个功能,既可以用硬件实现(性能高成本高),也也可以用软件实现(性能低成本也低)
指令集体系结构(ISA):软件和硬件之间的界面。设计计算机系统的ISA,就是要定义一台计算机可以支持哪些指令,以及每条指令的作用是什么、每条指令的用法是什么。
计算机系统的层次结构
下层是上层的基础,上层是下层的扩展
计算机系统的工作原理
从C语言源程序到可执行文件
预处理,对C语言中#开头的命令进行处理,如宏定义常量的替换
编译,将源程序翻译为汇编语言
汇编,将汇编语言程序翻译为二进制机器语言
链接,将多个相关的目标模块链接成完整的可执行文件
“存储程序”工作方式
计算机系统性能指标
存储器得到性能指标
总容量=存储单元个数*存储字长 bit=存储单元个数*存储字长/8 Byte
Eg:MAR为32位,MDR为8位,总容量= 2 32 ∗ 8 b i t = 4 G B 2^{32}*8 \ bit=4GB 232∗8 bit=4GB
注: K = 2 10 , M = 2 20 , G = 2 30 , T = 2 40 K=2^{10},M=2^{20},G=2^{30},T=2^{40} K=210,M=220,G=230,T=240
CPU的性能指标
CPU主频:CPU内数字脉冲信号振荡的频率
C P U 主频 ( 时钟频率,单位:赫兹 H z ) = 1 C P U 时钟周期 ( 单位:微秒、纳秒 ) CPU主频(时钟频率,单位:赫兹Hz)=\frac{1}{CPU时钟周期(单位:微秒、纳秒)} CPU主频(时钟频率,单位:赫兹Hz)=CPU时钟周期(单位:微秒、纳秒)1
CPI(Clock cycle Per Instruction):执行一条指令所需的时钟周期数。
注:不同的指令,CPI不同。甚至相同的指令,CPI也可能有变化。
执行一条指令的耗时=CPI*CPU时钟周期
CPU执行时间(整个程序的耗时)=CPU时钟周期数/主频=(指令条数*CPI)/主频
IPS(Instructions Per Second ):主频/平均CPI
FLOPS(Floating-point Operations Per Second):每秒执行多少次浮点运算(单位:KFLOPS、MFLOPS、GFLOPS、TFLOPS、PFLOPS,EFLOPS,ZFLOPS)
注:此处K、M、G、T为数量单位, K = K i l o = 千 = 1 0 3 , M = M i l l i o n = 百万 = 1 0 6 , G = G i g a = 十亿 = 1 0 9 , T = T e r a = 万亿 = 1 0 12 , P = 1 0 3 T , E = 1 0 3 P , Z = 1 0 3 E K=Kilo=千=10^3,M=Million=百万=10^6,G=Giga=十亿=10^9,T=Tera=万亿= 10^{12},P=10^3T,E=10^3P,Z=10^3E K=Kilo=千=103,M=Million=百万=106,G=Giga=十亿=109,T=Tera=万亿=1012,P=103T,E=103P,Z=103E
系统整体的性能指标
数据通路带宽:数据总线一次所能并行传送信息的位数(各硬件部件通过数据总线传输数据)
吞吐量:指系统在单位时间内处理请求的数量
响应时间:指从用户向计算机发送一个请求,到系统对该请求做出响应并获得它所需要的结果的等待时间。通常包括CPU时间(运行一个程序所花费的时间)与等待时间(用于磁盘访问、存储器访问、I/O操作、操作系统开销等时间)。
基准程序(跑分软件)是用来测量计算机处理速度的一种实用程序,以便于被测量的计算机性能可以与运行相同程序的其它计算机性能进行比较。
标签:知识点,存储,MAR,计算机,计算机系统,指令,MDR,CPU,408 From: https://blog.csdn.net/m0_61049985/article/details/136918896