EDVAC : 第一台采用冯.诺依曼体系的计算机
冯.诺依曼计算机:以运算器为中心
现代计算机:以存储器为中心
冯.诺依曼计算机的特点:
CPU=控制器+运算器
我们平时说的辅存是 底层存储空间,如手机的128g
主存是可同时运行程序大小,如手机的运行内存8g
因此,辅存可归为IO设备,在必要时才从存储空间中将其加载到主存中运行。
MAR : 存储地址(柜员)
MDR : 存储数据 (柜台)
存储体:具体存储的地方 (货架)
若MDR = 16bit ,那么一个字(word) = 16bit
1B = 1 字节,1b = 1bit
因此宽带的 100Mbps 实际下载最大速度 10MB/S
是用100/8 换算得到。
ALU : 算术逻辑单元,复杂电路实现算术运算
ACC:累加器,存放操作数 / 运算结果
MQ: 乘商寄存器,在乘除运算时,存放操作数 / 运算结果
X: 通用操作数寄存器,存放操作数
CU:控制单元,分析指令,给出控制信号
IR: 指令寄存器 , 存放当前的指令
PC: 程序计数器 , 存放下一条指令地址,能够自动加1
取指令:PC -- 分析指令:IR -- 执行指令: CU
CPU区分指令和数据的依据:指令周期的不同阶段
下层是上层的基础,上层是下层的扩展
机器语言:二进制代码
汇编语言:助记符
高级语言:C++、C、Java
编译程序:(C++/java/C) 使用一次编译生成.exe文件后,下次运行无需编译
解释程序:(python,javascript)运行一行解释一行,效率低。每次运行都要解释
MAR位数 反映存储单元的个数(最多支持多少个)
MDR位数 =存储字长=每个存储单元的大小
总容量=存储单元个数 x 存储字长bit ;1Byte = 8bit
存储单元个数 x 存储字长 / 8 Byte
Eg:MAR为32位 MDR为8位
总容量= * 8 bit = 4GB
但不一定会保证有4GB的总容量,可能只有1GB的总容量,需根据计算机实际情况而定
常见需要记忆的2的次方数
CPU主频: CPU内 数字脉冲信号振荡的频率。单位:HZ 赫兹,(10HZ表示每秒钟有10个脉冲信号)
一个高低电平周期CLK 称为 时钟周期, 主频 = ,即时钟周期的倒数
CPI : 执行一条指令所需要的时钟周期数
不同的指令,CPI不同。甚至相同的指令,CPI也可能有变化
执行一条指令所需时间: CPI * 时钟周期
Eg:某CPU主频为1000Hz,某程序包含100条指令,平均来看指令的CPI=3,该程序在该CPU.上执行需要多久?
100 * 3 * = 0.3 秒
IPS ( Instructions Per Second ) : 每秒执行多少条指令
IPS=主频 / 平均CPI
FLOPS (Floating point Operations Per Second) :每秒执行多少次浮点运算
KIPS 、MIPS、 KFLOPS 都是指的是10^n 时
数据通路带宽:数据总线一次所能并行传送信息的位数(各硬件部件通过数据总线传输数据)
吞吐量:指系统在单位时间内处理请求的数量。它取决于信息能多快地输入内存,CPU能多快地取指令,数据能多快地从内存取出或存入,以及所得结果能多快地从内存送给一台外部设备。这些步骤中的每一步都关系到主存,因此,系统吞吐量主要取决于主存的存取周期。
响应时间:指从用户向计算机发送一个请求,到系统对该请求做出响应并获得它所需要的结果的等待时间。通常包括CPU时间(运行一个程序所花费的时间)与等待时间(用于磁盘访问、存储器访问、I/O操作、操作系统开销等时间)。
基准程序是用来测量计算机处理速度的一种实用程序,以便于被测量的计算机性能可以与运行相
同程子的其它计算机性能进行比较。
问:主频高的CPU一定比主频低的CPU快吗?
不一定,如两个CPU,A的主频为2GHz,平均CPI=10;
B的主频1GHz,平均CPI=1...
问:若A、B两个CPU的平均CPI相同,那么A一定更快吗?
也不一定,还要看指令系统,如A不支持乘法指令,只能用多次加法实现乘法;而B支持乘法指令。
问:基准程序执行得越快说明机器性能越好吗?
基准程序中的语句存在频度差异,运行结果也不能完全说明问题