计算机原理复习提纲Word文档格式.docx
《计算机原理复习提纲Word文档格式.docx》由会员分享,可在线阅读,更多相关《计算机原理复习提纲Word文档格式.docx(25页珍藏版)》请在冰豆网上搜索。
由于其直接和运算器、控制器交换信息,因此要求存取速度快,但存储容量较小。
外存:
外存储器简称“外存”,是主机的外围设备,用来存储大量的暂时不参加运算或处理的数据和程序,因而允许速度较慢。
一旦需要,可成批地与内存交换信息。
它是主存储器的后备和补充。
如磁盘存储器、磁带存储器、光盘存储器等。
外存的特点是存储容量大、可靠性高、价格低,在脱机情况下可以永久地保存信息
存储单元:
在存储器中保存一个n位二进制数的n个触发器,组成一个存储单元
存储器地址:
存储器是由许多存储单元组成,每个存储单元的编号,称为地址
6.输入/输出
输入设备把人们所熟悉的某种信息形式变换为机器内部所能接收和识别的二进制信息形式
输出设备把计算机处理的结果变换为人或其他机器设备所能接收和识别的信息形式
总线:
构成计算机系统的骨架,是多个系统部件之间进行数据传送的公共通路。
7.常用性能指标:
主频-赫兹、字节-2n、存储容量-字节、存储周期-ns、运算速度-MIPS和MFLOPS
第二章
?
逻辑代数的运算律(不要求证明,记住即可),有计算题么?
1.进制的概念:
进制一般用数字或英文缩写标注在数字的。
右下角十进制D,二进制B,八进制O,十六进制H
(101.11)B=1×
22+0×
21+1×
20+1×
2-1+1×
2-2=(5.75)D
2.进制的转换***
任意给定一个R进制数:
knkn-1…k1k0.k-1…k-m,10进制和R进制(基数用r表示)之间的转换如下:
–m
R进制到10进制:
∑Ki×
ri
i=n
10进制到R进制:
整数部分:
除r取余,r为基数
小数部分:
乘r取整
例1:
1011.01)2=1×
23+0×
22+1×
20+0×
2-2=(11.25)10
例2:
(44.375)D=(101100.011)B
整数部分:
基数连除,取余数
自下而上
2|44余数低位
2|22………0=R0
2|11………0=R1
2|5………1=R2
2|2………1=R3
|1………0=R4
R5高位
基数连乘,取整数
自上而下
0.375
×
2整数高位
0.750………0=R-1
0.750
2
1.500………1=R-2
0.500
1.000………1=R-3低位
所以:
R5R4R3R2R1R0R-1R-2R-3
3.数据的表示(如何表示整数和小数)
定点数和浮点数来表示。
定点数:
如:
-12345(.0),+(0.)12345
4.浮点数尾数、阶码
任意R进制数N可写为N=RE·
M
尾数M:
纯小数,数N的有效数字。
决定该浮点数精度
阶码E:
整数,指明小数点在原数N中的位置,表示该浮点数大小的量级。
R:
R进制的基数。
一般机器采用二进制,故R=2
如:
(10.101)B=22·
0.10101,(101.01)B=(23×
0.10101)2
阶码的表示:
E=e+127
可用移码表示阶E的正负,即在原数e上加固定值127(01111111),即E=e+127。
反之,e=E-127
移码:
设一个数x=x0x1x2…xn,除符号位之外,有n位数值部分
则[x]移=2n+x↓进位
实际的阶码(原数)e=-10101,[x]移=25-10101=001011
e=+10101,[x]移=25+10101=110101
5.规格化表示:
规格化的数值表示可进一步节省位的使用。
一个数在无规格化情况下有多种表示,(1.75)10等价于(1.11)2×
20,(0.111)2×
21,(0.0111)2×
22为提高表示精度,让更多的位可以用于表示有效数据,约定:
当尾数M≠0时,要通过左右移动小数点修改阶码使最左端有效位为1.
754标准中,一个规格化的32位浮点数x的真值:
x=(-1)S×
(1.M)×
2e,e=E-127
例3:
将数(20.59375)10转换成754标准的32位浮点数的二进制存储格式,并用八进制表示出来。
解:
1)分别将整数和分数部分转换成二进制数:
(20.59375)10=(10100.10011)2
2)移动小数点,使其在第1,2位之间
10100.10011=1.010010011×
24[1.M中,M就是小数点之后的二进制数字]
阶的原数e=4(移动4位)
故:
S=0,E=e+127=4+127=131,M=(010010011)2
32位浮点数的二进制存储格式为:
01000001101001001100000000000000=(41A4C000)16
S131M
例6:
将数(44.375)10转换成754标准的32位浮点数的二进制存储格式。
(44.375)10=(101100.011)2
101100.011=1.01100011×
25
阶的原数e=5(移动5位)
于是:
S=0,E=e+127=5+127=132,M=01100011
01000010001100011000000000000000=(42314000)16
例4:
若浮点数x的754标准存储格式为(41360000)16,求其浮点数的十进制数值。
1)将16进制数展开后,可得二制数格式为
01000001001101100000000000000000
S阶码(8位)尾数(23位)
2)e=E-127=10000010-01111111=00000011=(3)10
3)包括隐藏位1的尾数
1.M=1.01101100000000000000000=1.011011
1.M×
2e=+(1.011011)×
23=+1011.011=(11.375)10
练习:
(52)8=5*81+2*80=40+2=42
(233)16=2*162+3*161+3*160=512+48+3=563
(41270000)16[参照例3]
真值
无符号
原码
反码
补码
00000000
+0
00000001
1
+1
00000010
2
+2
01111101
125
+125
01111110
126
+126
01111111
127
+127
10000000
128
-0
-127
-128
10000001
129
-1
-126
10000010
130
-2
-125
11111101
253
-3
11111110
254
11111111
255
6.原码、反码、补码
正数的原码、反码、补码表示都相同,
负数的表述如下:
原码,符号位置1,数值部分不变
反码,符号位置1,数值部分逐位求反,
0变1,1变0
补码,符号位置1,数值部分求反加1,
[x]补=[x]反+1
例[-3]原码10000011
[-3]反码11111100
[-3]补码11111101
移码表示法(常用于表示浮点数的阶码),能保证大的真值对应的移码也大,可用于直接比较[x]移=2n+x2n>
x≥-2n移码和补码尾数相同,符号位相反。
BCD码:
8421BCD码,用一个4位二进制数表示十进制的0——9的编码方案。
例:
(00010011)BCD≠2^4+2^1+2^0=(19)10,而是13
(100001110101.000101100011)BCD=(875.163)10
例题7:
7.逻辑运算
1.编码器赋予选定的一系列二进制代码以固定的含义。
或:
将给定的数用有限位的二进制代码表示。
例9:
设八个输入端为I1I8,对应八种状态,输出设为Y1、Y2、Y3,共三位二进制数。
求:
如何用三位二进制数表示8个状态?
<
解题步骤:
首先要列出状态表(即真值表),然后写出逻辑表达式并进行化简,最后画出逻辑图。
>
八线—三线编码器,8个输入端表8(X)种状态,对应3(n)个输出端,即三位二进制数
基本RS触发器
电路无输入信号,即R=S=0时:
两种稳定状态:
0状态:
Q=0,Q=1;
1状态:
Q=1,Q=0
第一种形态:
第二种
第三种形态
第四种形态
1.触发器是双稳态器件,只要令R=S=0,触发器即保持原态。
稳态情况下,两输出互补。
一般定义Q为触发器的状态。
2.在控制端加入正脉冲,可以使触发器状态变化。
S端加入正脉冲,使Q=1,S称为“置位”或“置1”端。
R端加入正脉冲,使Q=0,R称为“复位”或“清0”端。
第三章
1.存储器基本概念、分类、层次结构
是计算机系统中的记忆设备,用来存放程序和数据。
包括内存和外存。
存储器由若干存储单元组成,一个存储单元由若干个存储位组成,是存取数据的基本单元。
分类:
按读写功能:
只读;
读/写;
按存储介质:
半导体、磁表面;
按存储时间:
永久、易失
按存储方式:
随机和顺序
2.局部性原理、存储体系分级的原因
处理器访问存储器时,所访问的存储单元在一段时间内都趋向于一个较小的连续区域中。
空间局部:
紧邻被访问单元的地方也将被访问
时间局部:
刚被访问的单元很快将再次被访问
原因:
分级结构解决存储器件的容量、速度和价格矛盾
3.了解主存储器的技术指标
⏹存储容量
☐主存存储容量:
以字节B(1Byte=8bit)为基本单位
☐存储容量以210=1024规律表达KB,MB,GB和TB(厂商常以103=1000规律表达KB,MB,GB和TB)
☐存储容量的最大字节数可由地址码的位数来确定。
例如,一台计算机的地址码为n位,则可产生2n个不同的地址码,如果地址码全部利用,则可以寻址的空间为2n,也即存储器最大容量为2n字节。
☐因此,计算机地址总线、地址译码范围确定,则其最大存储容量就确定。
实际配置存储容量时,只能在这个范围内选择。
⏹存取时间(存储器访问时间)
☐从存储器收到读写有效地址的指令开始,经译码、驱动,直到将被访问的存储单元的内容读出(到CPU缓存)或写入(存储器)为止
⏹存取周期
☐连续启动两次读操作所需间隔的最小时间
☐存取周期通常大于存取时间,单位ns
⏹存储器带宽(数据传输速率)
☐单位时间里存储器所存取的信息量,位/秒(b/s)或字节/秒(B/s)
4.SRAM存储器芯片原理:
存储体的每一个存储单元都有一个地址编码(x,y)与其字线对应,任何一个存储单元的长度都是相等的。
4.1存储矩阵二维编址方式及其寻址。
给定存储体,地址线、数据线数的计算
⏹二维编址方式:
分为X、Y地址译码电路
⏹设n条地址线
☐若每一维有n/2个线,则可以译出2n/2个输出端。
两维共可译出2n/2×
2n/2=2n个输出状态。
☐此时译码输出只有2n/2+2n/2=2n/2+1根,与一维译码电路(需要2n个输出线)相比,大大减少所需的译码输出线。
4096×
1位存储器用二维编址方式,4096个存储元排列成64×
64的矩阵,它需要多少根地址信号线。
其中X地址译码电路的输入信号为A0~A5,输出信号为?
条,分别选中存储矩阵中的哪些行?
当输入地址信号为111111000000,选址单元为哪个?
例2例:
用3线-8线译码器直接找8个1位存储单元可以像前面图中所示,如果用二维寻址方式,如何实现?
两个方向共用几条线译码输出线?
答:
m*n=2*4
X方向:
输入一条线,译码输出2线
Y方向:
输入2条线,译码输出4条线。
共m+n=6个字选线
5.Cache命中率、平均访问时间、效率的计算
命中率:
在分层存储体系中,某一级的命中率H是指要访问的信息正好在这一级中的概率,相当于命中该级的次数与总访问次数之比。
设一个二级存储系统,由存储器M1和M2组成。
设在执行一段程序后,在M1和M2中访问的次数分别为R1和R2,则M1的命中率为:
H=R1/(R1+R2)
平均访问时间TA:
TA是与命中率关系密切的存储体系评价指标
两级存储系统中,TA=hTA1+(1-h)TA2
TA1:
(命中时)第一层的存取时间,h:
命中率
TA2:
(未命中)第二层的存取时间,1-h:
未命中率
若r=TA2/TA1为存储层次中相邻两级的访问时间倍率,e=TA1/TA为存储层次的访问效率,
则:
e=TA1/TA=TA1/(hTA1+(1-h)TA2)
=1/(h+(1-h)r)=1/(r+(1-r)h)
命中率(HitRate):
高速命中的概率
cache/主存系统的平均访问时间ta:
ta=htc+(1-h)tm
tc:
cache访问时间(命中)
tm:
主存访问时间(未命中)
Cache的访问效率e
设r=tm/tc表示主存慢于cache的
倍率
例1CPU执行一段程序时,cache
完成存取的次数为1900次,主存完
成存取的次数为100次,已知cache存取周期为50ns,主存存取周期为250ns,求cache/主存系统的效率(e)和平均访问时间(ta)。
【解】
h=Nc/(Nc+Nm)=1900/(1900+100)=0.95
r=tm/tc=250ns/50ns=5
e=1/[r+(1-r)h]=1/(5+(1-5)×
0.95)=83.3%[cache的访问效率e等于cache访问时间tc除平均访问时间ta]
ta=tc/e=50ns/0.833=60ns
或者,ta=h·
tc+(1-h)·
tm=60ns
某计算机系统的内存储器是cashe和主存构成,cashe的存储周期是30ns,主存的存取周期是150ns,一直在一段给定的时间内cpu共访问内存5000次,其中400此访问主存,求:
1cashe的命中率,2.cpu访问内存的平均时间;
3.效率
解:
h=(5000-400)/5000=0.92
r=150/30=5
方法1:
e=1/r+(1+r)h=1/[5+(1-5)*0.92]=1/[5+(-4)*0.92]=1/(5+(-3.68))=1/1.32=75.76%
30*(4600/5000)+150*(400/5000)=27.6+12=39.6
ta=htc+(1-h)tm=0.92*30+(1-0.92)*150=27.6+12=39.6
方法2:
e=tc/ta=30/39.6=75.76%
6.Cache工作原理和结构
工作原理:
1、Cache以块为单位进行操作
2、当CPU发出访存操作请求后,首先由Cache控制器判断当前请求的字是否在Cache中
3、若命中:
“读”请求:
直接对Cache读,与主存无关
“写”请求:
3种策略
●只更新Cache单元并加标记,块失效前才将内容写回主存
●Cache单元与主存单元同时写
●写入主存,并在Cache中加标记,下次从主存读出,保证正确。
4、未命中时:
☐读”请求:
从主存读出所需字送CPU,且把含该字的一块送Cache,若Cache已满,启用置换算法刷新一块老化内容;
☐若是“写”请求,立即或等该块换出时写入主存。
结构:
⏹Cache的数据块称为行
⏹主存的数据块称为块(Block)
⏹行与块的字是等长的,字是CPU每次访问存储器时可存取的最小单位
⏹Cache由数据存储器和标签存储器组成
☐数据存储器:
高速缓存主存数据
☐标签存储器:
保存数据所在主存的地址信息
Cache(CPU和主存之间)
虚拟存储器(主存和硬盘之间)
练习题:
1.X=(11)10=(1011)2Y=(5)10=(0101)2求:
[X]补-[Y]补=?
,[X]补+[-Y]补=?
1)[X]补-[Y]补
=01011–00101=00110
2)[X]补+[-Y]补
=01011+11011=100110=00110
[注:
最高1位已经超过字长故不显示]
第五章中央处理器
1.中央处理器:
控制计算机自动完成取出指令和执行指令任务的部件。
它是计算机的核心部件,简称CPU(CentralProcessingUnit)
基本组成:
CPU=运算器+控制器
基本功能:
☐指令控制
☐操作控制
☐时间控制
☐数据加工
2.CPU的功能<
4条>
1)指令控制:
保证机器按程序规定的顺序取出指令并执行
2)操作控制:
控制各部件按指定的操作动作
3)时间控制:
各类操作控制信号进行时间上的控制,以便协同工作。
4)数据加工:
完成具体的任务中涉及到的算术运算、逻辑运算。
3.ADD指令的指令周期
4.CPU的性能评价
设计算机时钟频率为f,时钟周期t
关系:
f=1/t
单位:
f,赫兹HZ;
t,秒s
如果CPU运行一个程序需要花费的时间设为Tcpu,则:
Tcpu=该程序耗费的总时钟周期数*单个时钟周期的秒数=Nc*t=Nc/f
指令类型
指令条数
时钟周期数
整数运算
数据传送
浮点运算
控制传送
45000
32000
15000
8000
例题1一台40MHz处理器执行标准测试程序
CPI和程序执行时间T
CPI=(45000×
1+32000×
2+15000×
2+8000×
2)
÷
(45000+32000+15000+8000)
=1.55(时钟周期/指令)
T=(45000×
2)÷
(40×
106)
=3.87×
10-3(秒)
性能评价标准:
MIPS=f/(CPI×
106)=40×
106/(1.55×
106)=25.81(百万条指令/秒)
1、写出下列真值的原码、反码和补码(设字长为8)
(1)12
(2)-120
(3)0
2、当下列各二进制数分别代表原码、反码、补码时,其等效的十进制数值为多少
(1)00001110
(2)11111111
(3)10000000
(4)10000001
3、用补码完成下列计算(设字长为8)
(1)-85+60
(2)100-60
(3)120+60
(4)-70-80
(5)-10+10
4、将(253.32)转换成二、八、十六进制数
附二章
1.
逻辑代数有哪三种基本运算?
其运算规则是什么?
2.
何谓“异或”门,写出其逻辑表达式、画出其电路符号、列出其真值表。
4.?
说明上升沿触发的D触发器的功能,画出其电路符号
1.说明SRAM工作原理
2.一个有20位地址和32位字长的存储器,1)能存储多少字节的信息?
2)如果由512×
8位的SRAM芯片组成,需要多少片?
3.说明存储器的分级结构,虚拟存储器在什么位置、由什么实现?
4.已知cache存取周期40ns,主存200ns,cache/主存系统平均访问时间为50ns,求cache的命中率。
5.Cache的地址映射、替换策略和写入策略各用于解决什么问题?
第五章
一、判断题
1.在主机中,只有内存能存放数据。
X
2.一个指令周期由若干个机器周期组成。
√
3.取指令发生在指令周期的第二个阶段。
4.非访内指令不需要用到地址寄存器X
5.指令周期是指CPU从主存中取出一条指令加上执行这条指令所需的时间。
6.程序计数器是用于记录已执行指令的数目X
二、选择题
1.中央处理器(CPU)是指B。
A.控制器B.运算器和控制器
C.控制器和主存D.运算器和寄存器
2.程序计数器作用是D。
A.存放指令B.计算程序长度
C.存放微指令地址D.存放下一条机器指令的地址
3.状态寄存器用来存放B。
A.算术运算结果
B.算术、逻辑运算及测试指令的状态结果
C.运算类型D.逻辑运算结果
三、问答:
1.在CPU基本模型中,主要有哪些寄存器?
它们的功能?
1.数据缓冲寄存器(DR)
暂时存放由内存读出或写入的指令或数据字
2.指令寄存器(IR)
保存当前正在执行的一条指令
3.程序计数器(PC)
确定下一条指令的地址
4.地址寄存器(AR)
保存当前CPU所访问的内存单元的地址
5.累加寄存器(AC)
最常使用的一个通用寄存器
6.状态条件寄存器(PSW)
保存由算术和逻辑指令的结果建立的各种条件码
2.叙述例子中ADD指