計算機(jī)原理知識點總匯
計算機(jī)原理知識點總匯
第一章
馮?諾依曼結(jié)構(gòu)(存儲程序)具有如下基本特點:(可能會出選擇,只要熟讀,不需背?。?
1. 計算機(jī)由運算器、控制器、存儲器、輸入設(shè)備和輸出設(shè)備五部分組成。
2. 采用存儲程序的方式,程序和數(shù)據(jù)放在同一存儲器中,由指令組成的程序可以修改。
3. 數(shù)據(jù)以二進(jìn)制碼表示
4. 指令由操作碼和地址碼組成。
5. 指令在存儲器中按執(zhí)行順序存放,由指令計數(shù)器指明要執(zhí)行的指令所在的單元地址,一 般按順序遞增。
6. 機(jī)器以運算器為中心,數(shù)據(jù)傳送都經(jīng)過運算器。
第二章
知識點1:加法器
A只有進(jìn)位逐位傳送的方式,才能提高加法器工作速度。解決辦法之一是采用“超前進(jìn)位產(chǎn) 生電路”來同時形成各位進(jìn)位,從而實現(xiàn)快速加法。稱這種加法器為超前進(jìn)位加法器。 問:如何提高加法器的運算速度?
答:采用超前進(jìn)位加法器。
B下面引入進(jìn)位傳遞函數(shù)Pi,進(jìn)位產(chǎn)生函數(shù)Gi的概念: 定義:
Pi=Xi+Yi稱為進(jìn)位傳遞函數(shù)
Gi=Xi?Yi稱為進(jìn)位產(chǎn)生函數(shù)
Gi的意義是:當(dāng)XiYi均為“ 1”時,不管有無進(jìn)位輸入,本位定會產(chǎn)生向高位的進(jìn)位.
Pi的意義是:當(dāng)Xi和Yi中有一個為“1”時,若有進(jìn)位輸入,則本位也將向高位傳送此進(jìn) 位,這個進(jìn)位可看成是低位進(jìn)位越過本位直接向高位傳遞的。
知識點2:算術(shù)邏輯單元
A:如果把16位ALU中的每四位作為一組,用類似位間快速進(jìn)位的方法來實現(xiàn)16位ALU (四片ALU組成),那么就能得到16位快速ALU。
Cn
0
1
2
3
Cn Cn+4
Cn Cn+4
2n Cn+4
Cn Cn+4
第三章
知識點1:二,八,十,十六之間數(shù)制轉(zhuǎn)換(不直接考,基本功需要掌握) 表示的時候一定要在括號外表示出幾進(jìn)制,或者后面用字母表示否則減分,例:
(2C7.1F)16 或者為 2C7.1FH
(0001010)2 或者為 0001010B
例題:
1.例如:一個十進(jìn)制數(shù)123.45的表示
123.45 =1 X 102+ 2X101+ 3X 100 + 4 X 10-1+ 5X10-2
2?例如十六進(jìn)制數(shù)(2C7.1F)16的表示
(2C7.1F)16=2 X162+ 12 X 161+ 7 X160+ 1 X16-1+ 15 X 16-2
3?例如:寫出(1101.01)2,(237)8,(10D)16 的十進(jìn)制數(shù)
(1101.01)2=1 X23+1X 22+0 X 21+1X20+ 0X 2-1+1 X 2-2 =8+4+1+0.25=13.25
4.
(327) 10 =(101000111) 2
例如:將(0.8125) 10轉(zhuǎn)換成二進(jìn)制小數(shù).
整數(shù)部分
2 X 0.8125=1.625 1
2 X 0.625二 1.25 1
2X0. 25=0. 5 0
2X0. 5=1 1
(0. 8125) 10 =(0. 1101) 2
5.
例如:將(02) 10轉(zhuǎn)換成二進(jìn)制小數(shù)
XXXXXXXX
24862486
(237)8=2 X 82+3 X 21+7 X 2。=128+24+7=159
(10D)16=1 X 162+13 X 160=256+13=269
3例如:
2
用基數(shù)除法將(327)10轉(zhuǎn)換成二進(jìn)制數(shù)
I 327
余數(shù)
163
1
81
1
40
1
20
0
10
0
5
0
2
1
1
0
0
1
6?二進(jìn)制轉(zhuǎn)換成八進(jìn)制
例:(10110111 .01101)2
二進(jìn)制: 10 ,110,111 . 011,01
二進(jìn)制:010 ,110,111.011,010
八進(jìn)制: 2 6 7.3 2
(10110111.01101) =(267.32)。
2 8
7?八進(jìn)制轉(zhuǎn)換二進(jìn)制
例如:(123.46 ) =(001,010,011.100,110 ) =(1010011.10011)
8 2 2
8?二進(jìn)制轉(zhuǎn)換成十六進(jìn)制
例:(110110111 .01101)2
二進(jìn)制: 1 ,1011,0111.0110 ,1
二進(jìn)制:0001 ,1011,0111.0110 ,1000
十六進(jìn)制: 1 B 7 . 6 8
(10110111.01101)2 =(1B7.68)16
9?十六進(jìn)制轉(zhuǎn)換成二進(jìn)制 16
例如:(7AC.DE ) 16=(0111,1010,1100.1101,1110 )2 =(11110101100 .1101111 2
知識點2帶符號的二進(jìn)制數(shù)據(jù)在計算機(jī)中的表示方法及加減法運算 名詞解釋:真值和機(jī)器數(shù)
真值:正、負(fù)號加某進(jìn)制數(shù)絕對值的形式稱為真值。如二進(jìn)制真值:
X=+1011 y=-1011
機(jī)器數(shù):符號數(shù)碼化的數(shù)稱為機(jī)器數(shù)如:X=01011 Y=11011(最高位為符號位,0
表示正數(shù),1表示負(fù)數(shù))
在計算機(jī)中表示的帶符號的二進(jìn)制數(shù)稱為“機(jī)器數(shù)”,機(jī)器數(shù)有三種表示形式:原碼,補(bǔ)碼, 反碼。
A
原碼表示法:原碼表示法用“0”表示正號,用“1”表示負(fù)號,有效值部分用二進(jìn)制的絕對 值表示。
X 0<X<l
[X]原二”
l-x=l+|x| -l<x^o
即[X]原=符號位+1X1
數(shù)值零的真值有+ 0和一0兩種表示方式,[X]原也有兩種表示形式:
[+0] = 00000 [ -0] =10000
原 原
例:完成下列數(shù)的真值到原碼的轉(zhuǎn)換
X1 = + 0.1011011 X2 = -0.1011011
[X1]原=0.1011011 [X2]原=1.1011011
完成下列數(shù)的真值到原碼的轉(zhuǎn)換
X1 = + 0 1011011 X2 = -0 1011011
[X1]原=0.1011011 [X2]原=1.1011011
B
補(bǔ)碼的定義:正數(shù)的補(bǔ)碼就是正數(shù)的本身,負(fù)數(shù)的補(bǔ)碼是原負(fù)數(shù)加上模。
-l^X<0
(mod 2) 9
j^2+X=2-|X| 或[x]補(bǔ)二2-符號位+X
例:完成下列數(shù)的真值到補(bǔ)碼的轉(zhuǎn)換
X1 = + 0.1011011 X2 = — 0.1011011
[XI]補(bǔ)=01011011 [X2 ]補(bǔ)=10100101
完成下列數(shù)的真值到補(bǔ)碼的轉(zhuǎn)換
X1 = + 0 1011011 X2 = — 0 1011011
[X1]補(bǔ)=01011011 [X2 ]補(bǔ)=10100101
正數(shù)的補(bǔ)碼:本身。
負(fù)數(shù)的補(bǔ)碼:符號位為1,數(shù)值部分取反加1。
數(shù)值零的補(bǔ)碼表示形式是唯一的:
葉 0]補(bǔ)=[—0]補(bǔ)=0.0000
當(dāng)補(bǔ)碼加法運算的結(jié)果不超出機(jī)器表示范圍時,可以得出下面重要結(jié)論:
1) 用補(bǔ)碼表示的兩數(shù)進(jìn)行加法運算,其結(jié)果仍為補(bǔ)碼。
2) [X+Y]補(bǔ)=兇補(bǔ)+ [Y]補(bǔ)
3) 符號位與數(shù)值位一樣參加運算。
另外對于減法運算,因為[X—Y]補(bǔ)=[X+(—Y)]補(bǔ)=[X]補(bǔ)+[—Y]補(bǔ),所以計算時,可以 先求出一Y的補(bǔ)碼,然后再進(jìn)行加法運算。
C
正數(shù)的反碼表示:與原、補(bǔ)碼相同。
負(fù)數(shù)的反碼表示:符號位為1。數(shù)值部分:將原碼的數(shù)值按位取反。負(fù)數(shù)反碼比補(bǔ)碼少1。 一般只用做求補(bǔ)碼的中間形式。
反碼的定義:
rX 0<X<l
[X]反二 J
.2—2勺+X — 1<XWO
即:[X]反=(2—2-n+X)?符號位+Xmod ( 2 —2-n),其中n為小數(shù)點后的有效位數(shù)。 反碼零有兩種表示形式:
[ + 0]反= 0.0000, [-0]反=1.1111
反碼運算在最高位有進(jìn)位時,要在最低位+1.
-2n^X< 2n
D移碼的定義:
[X]移二 2n +X
把[x]補(bǔ)符號取反,即得[X]移
[X+Y ]移工[X]移 + [Y]移
移碼具有以下特點:
1) 最高位為符號位,1表示正號,0表示負(fù)號。
2) 在計算機(jī)中,移碼只執(zhí)行加減法運算,且需要對得到的結(jié)果加以修正,修正量為2n,即 要對結(jié)果的符號位取反。
3) 0有唯一的編碼,即[+0]移=[-0]移=1000?00
例:X=+1010,Y=+0011 求[X+Y]移=?
[X]移=11010, [Y]移=10011
[X]移 + [Y]移=11010+10011=101101
[X+Y ]移=01101+10000=11101 符號相反
例:X=-1010,Y=-0110求[X+Y]移=?
[X]移=00110, [Y]移=01010
[X]移 + [Y]移=10000
[X+Y ]移=10000+10000=00000
當(dāng)階碼等于-16時,移碼為00000,此時浮點數(shù)當(dāng)作0。
E
原碼、補(bǔ)碼、反碼之間的轉(zhuǎn)換
1) 由原碼求補(bǔ)碼
正數(shù):[X]補(bǔ)=[X]原
負(fù)數(shù):符號不變,其余各位取反,末位加1。
2) 由補(bǔ)碼求原碼
正數(shù):[X]補(bǔ)=[X]原
負(fù)數(shù):符號不變,其余各位取反,末位加1。
F
溢出:當(dāng)運算結(jié)果超出機(jī)器數(shù)所能表示的范圍時,稱為溢出。
什么情況下會產(chǎn)生溢出?
1) 相同符號數(shù)相減,相異符號數(shù)相加不會產(chǎn)生溢出。
2) 兩個相同符號數(shù)相加,其結(jié)果符號與被加數(shù)相反則產(chǎn)生溢出;
3) 兩個相異符號數(shù)相減,其運算結(jié)果符號與被減數(shù)相同,否則產(chǎn)生溢出。
知識點2:定點數(shù)和浮點數(shù)
A. 在計算機(jī)中的數(shù)據(jù)有定點數(shù)和浮點數(shù)兩種表示方式。
B. 定點數(shù):定點數(shù)是指小數(shù)點固定在某個位置上的數(shù)據(jù),一般有小數(shù)和整數(shù)兩種兩種表示形 式。定點小數(shù)是把小數(shù)點固定在數(shù)據(jù)數(shù)值部分的左邊,符號位的右邊;整數(shù)是把小數(shù)點固定 在數(shù)據(jù)數(shù)值部分的右邊。
C. 浮點數(shù):是指小數(shù)點位置可浮動的數(shù)據(jù)。
通常表示為:N = M?R E (例:0.10111 X 2110 )
其中N為浮點數(shù),M為尾數(shù)(mantissa)E為階碼(exponent),R為階的基數(shù)(radix)
R為常數(shù),一般為2, 8, 16。在一臺計算機(jī)中,所有數(shù)據(jù)的R都是相同的。因此,不需要 在每個數(shù)據(jù)中表示出來。
浮點數(shù)表示形式:
Ms
E
M
1位 口+1位 m位
Ms是尾數(shù)的符號位,0表示正,1表示負(fù)。
E為階碼,整數(shù)ii-L位,1位符號位
M為尾數(shù),尬位。
尾數(shù)通常用規(guī)格化形式表示,小數(shù)點后不能為0。
例:X=+0.0010111=0.10111X 2-2 =0.10111 X 2-0010 =0.10111 X 21110
知識點3:定點原碼一位乘法
移也電路
B-ALU
ALU/2-A
上圖需要看
中,乘數(shù)放
命令,
是用移位寄存器實現(xiàn)的,其最低位用作B-ALU的控制命令。加法器最低一位的值,右移 時將移入C寄存器的最高數(shù)直位使相乘之積的最低位部分保存進(jìn)C寄存器中,原來的乘 數(shù)在逐位右移過程中丟失了!(此過程需要看明白。
乘法開始時,A寄 寄存器中。
器被清為零,作為初始部分積。被乘數(shù)放在B寄存器 '積和被乘數(shù)相加是通過給出A-ALU命令和B- ALU
存
分
在“ALU中完成的。ALU的輸出經(jīng)過移位電路向右移一位送入A寄存器中。C寄存器
■
稷現(xiàn)部
圖3.5.實現(xiàn)原碼一位乘法的邏輯電路框圖
例 3.31
X=0.1101,
Y=0.1011
計算X ?
Y
步數(shù)
條件
操件
部分積
乘數(shù)
00.0000
_ 1011
1)
On 二 1
+X
+
00.1101
■ \
00.1101
、\
右移
00.0110
1_ 101
2)
Gi 二 1
+X
+
00.1101
01.0011
右移
00.1001
11_ 10
3)
Cn—0
+0
+
00.0000
右移
00.1001
00.0100
111_ 1
知識點4:
定點補(bǔ)碼一位乘法+X
+
00.1101
A. 補(bǔ)碼與真值的轉(zhuǎn)換關(guān)系
X二一X。+ 2-i 二-Xg +0- X1X2 Xn
B. 補(bǔ)碼的右移
補(bǔ)碼連同符號位右移一位,并保持符號位不變,相當(dāng)于乘1/2,或除2. 設(shè)區(qū)]補(bǔ)=X0.X1X2……Xn
xo. XoXN
Xn
設(shè) X= - 0.1101 ,Y= 0.1011
即:[X]補(bǔ)=11.0011, [Y]補(bǔ)=Y= 0.1011 求:[X ? Y]補(bǔ)
解:
X ? Y= - 0.10001111
[X ? Y]補(bǔ)=1.01110001
O O. O O O U
+ [X]ir 3 1.0011
J 1, 0 1 1
右務(wù) 1 立 1 1. 1 0 0 1 - j
+[嗎卅 11-0011
1 Oh 1 1 0 0
右移1儉 J 1, 0 1 10 ?
■+■0 u m u t> <j
110110 儉 1 1. 1 O 1 1 ff
+ [X]>h 1 o o 1 1
1 o. 1 1 1 0
右務(wù)1位 1 1h 0 1 1 1
乘數(shù)
說明
10 11
十兇補(bǔ)
110 1
右移L位
+【?!垦a(bǔ)
0 1 1 O
右疹1位
右務(wù)1■位
O O 1 1
4[X]牛卜
0 () O 1
右務(wù)1■位
例 3.34
設(shè) X= - 0.1101 ,Y= -0.1011
即:[X]補(bǔ)=11.0011, [Y]補(bǔ)=11.0101 求:[X ? Y]補(bǔ)
解:
X ? Y= + 0.10001111 [X ? Y]補(bǔ)=0.10001111
乘數(shù)
部分積
+[刃補(bǔ)
0 0. 0 0 0 0
1 1. 0 0 1 1
1 1. 0 0 1 1
右移1位
1 1. 1 0 0 1
+0
0 0. 0 0 0 0
1 1. 1 0 0 1
右移1位
1 1. 1 1 0 0
+兇補(bǔ)
11.0011
10. 1111^
右移1位
1 1. 0 1 1 1
布斯公式
d比較法)
C
0 10 1
0 10
111
初始值
+國補(bǔ)
右移1位
+0
右移1位
+匡]補(bǔ)
右移1位
+0
Y]補(bǔ)
比較法:用相鄰鄰兩位乘數(shù)比較的結(jié)果決定乎補(bǔ)、-X補(bǔ)或凱位 比歧*算法 1補(bǔ)
Yn (咼位)
Yn+1 (低位)
操作(A補(bǔ)為部分積累加和)
0
0
部分積加0,右移一位。
0
1
部分積+[x]補(bǔ),右移一位。
1
例 3.35
0
部分積+ [-X]補(bǔ),右移一位。
1
1
部分積加0,右移一位。
設(shè) X= - 0.1101 ,Y= 0.1011 ip: [X]補(bǔ)=11.0011, [丫]補(bǔ)=0.1011 求:[X ?
部分積
乘數(shù) 說明
0 0. 0 0 0 0 o ini
+[-X]補(bǔ) 0 0. 1 1 0 1
0 0. 1 1 0 1
右移 1 位 0 0. 0 1 1 0 10 10
+0 0 0. 0 0 0 0
1 Q初始值:最后補(bǔ)0
Y;-Y4=-ls+[-X]H
1 1 YrY3=0
+0
0 0. 0 1 1 0
右移1位0 0. 0 0 1 1
+ [X]補(bǔ) 11.0011
右移1位
1 1. 0 1 1 0
1 1. 1 0 1 1
+0
0 0. 1 1 0 1
0 0. 1 0 0 0 右移1位0 0.0100 知識點^浮點數(shù)的加減運算
0 10 10 1
0 0 10 10
0 0 0 1 0 1
0 0 0 1
Y3 Y2=1
+國補(bǔ)
E-Y]二 1,
+卜刃補(bǔ)
Y1 Y0=l
+國補(bǔ)
步驟:
首先,檢測能否簡化操作。 尾數(shù)為0
判斷操作數(shù)是否為0〈
階碼下溢
1.對階:
2 3
.1101
2 X0.1001^10. 0 —010.01 — 2 X0. 0101
1) 對階::使兩數(shù)階碼相等(小數(shù)點實■際位置對齊,①數(shù)對
2) 對階規(guī)則::小階向大階對齊。
3) 對階操作:小階階碼增大,尾數(shù)右移。例.AJ>BJ,則BJ+1 BJ,BW,直到BJ=AJ 4)階碼比較:比較線路或減法。
2.尾數(shù)加減.
AW土BW—AW
3?結(jié)果規(guī)格化
(1) 1.0001
(2) 0.0101
+0.1101
1.0010
愉|>1溢出
40,1001
1. 1010
例: IWK1/2
設(shè)浮點數(shù)的階碼規(guī)4位(含階符),尾數(shù)為6位應(yīng)尾符)規(guī)格中的指數(shù)項,小數(shù)項均為 二進(jìn)制真值.
(l)x=2olx0.110h y=2nx (-0.1010),求x+嚴(yán)?
^/――o*oio Y n till v== mn. 5^x-v=?
解⑴岡斜O(jiān)Oh 041010s [yl^OlL 1.01100
①對階[AE]= [m]H^?^°01+ll01±ll!^其真值為叩卩即蝴
階碼比y的階剛2冊翩應(yīng)右移血階碼飆得
[xj^OOlL 0.00111 (啥I人)
⑦尾數(shù)相加(用雙符號L險盼呦和叭
00,00111
+ 11.01100
11.10011
4?舍入處理硼縱采輔舍辭。
5?溢出判斷尾
檢查階碼是否溢出 - --
上溢:置溢出標(biāo)志
下溢:置結(jié)果為浮點機(jī)器零
知識點6?數(shù)據(jù)校驗碼:
數(shù)據(jù)校驗碼是一種常用的帶有發(fā)現(xiàn)某種錯誤和自動改錯能力的數(shù)據(jù)編碼方法? 碼距:任意兩個合法碼之間至少有幾個二進(jìn)制位不同.有一位碼距為1.
常用的數(shù)據(jù)校驗碼有奇偶校驗碼,海明校驗碼和循環(huán)校驗碼。(只需掌握奇偶校驗碼)
A. 奇偶校驗碼
D 檢比。?D 6D5D4D3D2D j
1 0 0 0 1 1 1 0 0 偶校驗
1 000110 00 奇校驗
B. 奇偶校驗碼
有效信息位+1位校驗位一校驗碼
檢測依據(jù)(編碼規(guī)則):
約定校驗碼中1的個數(shù)為奇數(shù)/偶數(shù)。
如:奇校驗1O11C11 0
1011001 1
碼距d二2
通過統(tǒng)計校驗碼中1的個數(shù)是否為奇數(shù)來
第四章
弟四草
知識點1主存儲器分類
按照讀寫性質(zhì)劃分:
1.)隨機(jī)讀寫存儲器(random access memory,RAM)
靜態(tài)隨機(jī)存儲器(SRAM);動態(tài)隨機(jī)存儲器(DRAM)
由于它們存儲的內(nèi)容斷電則消失故稱為易失性存儲器
2)只讀存儲器(read-only memory,ROM)
知識點2存儲器的主要技術(shù)指標(biāo):
A主要技術(shù)指標(biāo)有:主存容量,存儲器存儲時間和存儲周期.
B存儲容量:存放信息的總數(shù),通常以字(word,字尋址)或字節(jié)(Byte,字節(jié)尋址)為單位表示 存儲單元的總數(shù).微機(jī)中都以字節(jié)尋址,常用單位為KB MB、GB、TB。
C存儲器存儲時間:啟動一次存儲器操作到完成該操作所經(jīng)歷的時間。
D存儲周期:連續(xù)啟動兩次獨立的存儲器操作所需間隔的最小時間?
E計算機(jī)可尋址的最小信息單位是一個存儲字,相鄰的存儲器地址表示相鄰存儲字,這種機(jī) 器稱為“字可尋址”機(jī)器。一個存儲字所包括的二進(jìn)制位數(shù)稱為字長。一個字又可劃分為若 干個字節(jié)?,F(xiàn)代計算機(jī)中,大多數(shù)把一個字節(jié)定為8個二進(jìn)制位,因此,一個字的字長通常 是8的倍數(shù)。(不需背,明白即可)
F以字或字節(jié)為單位來表示主存儲器存儲單元的總數(shù),就是主存儲器的容量。
G指令中地址碼的位數(shù)決定了主存儲器的可直接尋址的最大空間。
知識點4讀/寫存儲器
A半導(dǎo)體讀寫存儲器(即隨機(jī)存儲器(RAM))按存儲元件在運行中能否長時間保存信息來 分,有靜態(tài)存儲器和動態(tài)存儲器兩種。前者利用雙穩(wěn)態(tài)觸發(fā)器來保存信息,只要不斷電,信 息是不會丟失的;動態(tài)存儲器利用MOS電容存儲電荷來保存信息,使用時需不斷給電容充電才能使信息保持。靜態(tài)存儲器的集成度低,但功耗較大;動態(tài)存儲器的集成度高,功耗小, 它主要用于大容量存儲器。(不需要背,明白即可)
B靜態(tài)存儲器SRAM
依靠雙穩(wěn)態(tài)電路內(nèi)部交叉反饋的機(jī)制存儲信息。功耗較大,速度快,作Cache。
動態(tài)存儲器DRAM
依靠電容存儲電荷的原理存儲信息。功耗較小,容量大,速度較快,作主存。
C再生
再生(刷新):為保證DRAM存儲信息不遭破壞,必須在電荷漏掉以前,進(jìn)行充電,以恢復(fù) 原來的電荷,這一充電過程稱為再生或刷新。
問:為什么要刷新?
答:為保證DRAM存儲信息不遭破壞,必須在電荷漏掉以前,進(jìn)行充電,以恢復(fù)原來的電 荷。
知識點5半導(dǎo)體存儲器的組成與控制
A一個存儲器芯片的容量有限,因此,應(yīng)用中需進(jìn)行擴(kuò)展。包括位擴(kuò)展和字?jǐn)U展。
B位擴(kuò)展:用多個存儲器器件對字長進(jìn)行擴(kuò)充。
C字?jǐn)U展:增加存儲器中字的數(shù)量。
連接方式:將各芯片的地址線、數(shù)據(jù)線、讀寫控制線相應(yīng)并聯(lián),由片選信號來區(qū)分各芯片的 地址范圍。
例:用4個16K 8位芯片組成64K 8位的存儲器。
地址線 ^11^10^9^8 必丁編 A5A4 A3A2
0 0 0 0,0 0 0 0, 000 0, 0000 ooooh
0 1
字?jǐn)U展連接方式:(此圖作業(yè)留過類似的,掌握) 1111 FFFFH
D字位擴(kuò)展: 圖匚⑴卞護(hù)展連後齊式
如果一個存儲容量為M XN 位,所用芯片規(guī)格為LXK位,那么這個存儲器共用(M/L) X (N/K)個芯片。(重要)
3FFFH
7FFFH
BFFFH
FFFFH
例如:要組成16MX8位的存儲器系統(tǒng),需多少片4MX1位的芯片? 16M/4MX8/1= 32 片
若有芯片規(guī)格為1MX8位,則需16M/1MX8/8= 16片。
第五章
知識點1指令格式
A一條指令一般包含下列信息:
1) 操作碼:具體說明操作的性質(zhì)及功能。
2) 操作數(shù)的地址
3) 操作結(jié)果的存儲地址
4) 下一條指令的地址
綜上,一條指令實際上包括兩種信息即操作碼和地址碼。
B指令字:代表指令的一組二進(jìn)制代碼信息;
指令長度:指令字中二進(jìn)制代碼的位數(shù);
C零地址指令
格式;OPCODE
指令中只有操作碼沒有操作數(shù)或地址。兩種可能:
(1) 無需操作數(shù),例如:空操作指令,停機(jī)指令
(2) 操作數(shù)是默認(rèn)的
D 一地址指令
格式:
OPCODE
A
A-----操作數(shù)的存儲地址或寄存器名
例如:遞增,移位,取反
E二地址指令
格式暑 OPCODE Al A2
A1二二-第一個源操作數(shù)的存儲地址或寄存器地址;
A2-----第二個源操作數(shù)和存放結(jié)果的存儲地址或寄存器地址 例如:[AX]+[BX]f [AX]
ADD AX, BX
F三地址指令
格式: OPCODE Al A2 A3
A1——第一個源操作數(shù)的存儲地址或寄存器地址。
A2-----第二個源操作數(shù)的存儲地址或寄存器地址。
A3-----操作結(jié)果的存儲地址或寄存器地址
G多地址指令:用于實現(xiàn)成批數(shù)據(jù)處理。
H計算機(jī)中指令和數(shù)據(jù)都是以二進(jìn)制碼的形式存儲的。但是,指令的地址是由程序計數(shù)器(PC) 規(guī)定的。而數(shù)據(jù)的地址是由指令規(guī)定的。
知識點2:指令操作碼的擴(kuò)展技術(shù)
A指令操作碼的位數(shù)限制指令系統(tǒng)中完成操作的指令條數(shù)。若操作碼長度為K,最多有2k條 不同指令。
B指令操作碼通常有兩種編碼格式,一種固定格式一種可變格式。
C固定格式操作碼
操作碼長度固定,一般集中于指令字的一個字段中。在字長較大的大中型以及超級小型機(jī)上 廣泛使用。優(yōu)點:有利于簡化硬件設(shè)計,減少譯碼時間
D可變格式操作碼
即操作碼長度可以改變,且分散放在指令字的不同字段中。
這種方法在不增加指令字長度的情況下可表示更多的指令,但增加了譯碼和分析難度,需更 多硬件支持。微機(jī)中常使用此方式。
F可變格式操作碼的指令示例
如果需要三地址、二地址、一地址指令各15條、零地址指令16條,如何安排操作碼呢?例 如可以這樣規(guī)定:
OP
A1
A2
A3
15條三地址指令的操作碼為:0000?1110
15條二地址指令的操作碼為:前4位1111,
即 1111 0000 ?1111 1110
15條一地址指令的操作碼為:前8位均為1,
即 11111111 0000 ?11111111 1110
16條零地址指令的操作碼為:前12位均為1,
即 111111111111 0000?1111111111_11 1111
再如:同樣情況下用可變格式操作碼分別形成三地址指令15條、二地址指令14條、一地址 指令31條和零地址指令16條。按要求得到結(jié)果之一如下:
15條三地址為:
0000?1110
14條二地址為:
1111 0000 ?1111 1101
31條一地址為:
11111110 0000 ?11111111 1110
16條零地址為:
111111111111 0000?111111111111 1111
知識點3指令長度與字長的關(guān)系
A字長是指計算技能直接處理的二進(jìn)制數(shù)據(jù)的位數(shù)。
B首先,數(shù)據(jù)字長決定了計算機(jī)的運算精度,字長越長,計算機(jī)的運算精度越高。 其次,地址碼長度決定了指令直接尋址能力。
C指令的長度與計算機(jī)的字長沒有固定關(guān)系。
知識點4尋址方式(編制方式)
A尋址方式:確定本條指令的數(shù)據(jù)地址及下一條要執(zhí)行的指令地址的方法。
B需掌握尋址:
1) 直接尋址:指令的地址碼部分給出的就是操作數(shù)在存儲器中的地址。
2) 特點是簡單直觀,便于硬件實現(xiàn),但操作數(shù)地址是指令器單元的一部分,只能用于訪問 固定的存儲。
2) 寄存器尋址:在指令的地址碼部分給出某一寄存器的名稱(地址),而所需的操作數(shù)就在 這個寄存器中。
這種方式數(shù)據(jù)傳送快,計算機(jī)中多用。
3) 基址尋址:機(jī)器內(nèi)設(shè)置一個基址寄存器,操作數(shù)的地址由基址寄存器的內(nèi)容和指令的地 址碼A相加得到。地址碼A通常稱為位移量(disp)或偏移量。
4) 變址尋址:把CPU中變址寄存器的內(nèi)容和指令地址部分給出的地址之和作為操作數(shù)的地 址來獲得操作數(shù)。這種方式多用于字串處理、矩陣運算和成批數(shù)據(jù)處理。
5) 間接尋址:在指令的地址碼部分直接給出的既不是操作數(shù)也不是操作數(shù)的地址,而是操 作數(shù)地址的地址。
分為:寄存器間接尋址:改變寄存器Rn中的內(nèi)容就可訪問內(nèi)存的不同地址。
存儲器間接尋址
6) 相對尋址:程序計數(shù)器PC的內(nèi)容與指令中地址碼部分給出的偏移量(Disp)之和作為操 作數(shù)的地址或轉(zhuǎn)移地址,稱為相對尋址方式。
相對尋址方式主要應(yīng)用于相對轉(zhuǎn)移指令。轉(zhuǎn)移地址為(PC)+disp
相對尋址有兩個特點:
1。 由于目的地址隨PC變化不固定,所以非常適用于浮動程序的裝配與運行。
2。 偏移量可正可負(fù),通常用補(bǔ)碼表示。
7) 立即尋址:所需的操作數(shù)由指令的地址碼部分直接給出,稱為立即尋址(立即數(shù)尋址)。 特點:操作碼和一個操作數(shù)同時被取出,不必再次訪問存儲器,提高了指令的執(zhí)行速度。
知識點5RISC精簡指令計算機(jī)的特點
1) 、僅選使用頻率高的一些簡單指令和很有用但不復(fù)雜指令,指令條數(shù)少。
2) 、指令長度固定,指令格式少,尋址方式少
3) 、只有取數(shù)/存數(shù)指令訪問存儲器,其余指令都在寄存器中進(jìn)行,即限制內(nèi)存訪問
4) 、CPU中通用寄存器數(shù)量相當(dāng)多;大部分指令都在一個機(jī)器周期內(nèi)完成。
5) 、以硬布線邏輯為主,不用或少用微程序控制
6) 、特別重視編譯工作,以簡單有效的方式支持高級語言,減少程序執(zhí)行時間
第八章
知識點1時序系統(tǒng)
A指令周期:讀取并執(zhí)行一條指令所需的時間稱為一個指令周期。
B機(jī)器周期(CPU周期):在組合邏輯控制中,常將指令周期劃分為幾個不同階段,每個階 段稱為一個機(jī)器周期(周期)。
C時鐘周期(節(jié)拍):一個機(jī)器周期又分為若干個相等的時間段,每一個時間段為一個時鐘周 期(節(jié)拍)。時鐘周期長度等于CPU執(zhí)行一次加法或一次數(shù)據(jù)傳送時間。
D工作脈沖:對某些微操作定時。
E各時序信號之間的關(guān)系:
上圖必須掌握!
知識點3模型機(jī)的指令系統(tǒng)
A尋址方式:
知識點4模型機(jī)的時序系統(tǒng)
A機(jī)器周期
1) 、取指周期FT
2) 、取源操作數(shù)周期ST
讀取源操作數(shù)一SR
3) 、取目的操作數(shù)周期DT
讀取目的操作數(shù)一DR (單) 雙操作數(shù)指令一 LA。
4) 、執(zhí)行周期ET
根據(jù)IR中的操作碼執(zhí)行相應(yīng)的操作。
知識點5模型機(jī)指令的執(zhí)行過程:
MAR
R Ead M
MDR-SR
| READ M j
..MDI
R- SR |
|(R)+ Rs—MAR Rs + 1 Rs r —
Rs-MA k?
1 Rs+1— Rs
[REgD M ]
&DR+TEMP ]
TEMP^MAR
M I
R (R )
(UfLA R—MAR
READ M
MDR-
,b ....
X(R )
~|®«R )+
PC->MaR
PC+1-J>C
1
,一:.
.t.
read m
READ M
.I
MDRJA
MDR-JEMP 1
I
Ro+lAfMAR
TBMP—MAR [
i
read m
READ M
-,
-!
1
MDRfLA
MDfULA ;
—i
M ERf SR
例1加法指令A(yù)DD RO, (R1)的微操作序列。
FT
Po PC—BUS, BUS— MAR, READ, CLEAR LA, 1—CO, ADD, ALU—LT
P1 LT—BUS, BUS—PC, WAIT
P MDR— BUS, BUS—IR
2
P3 1—ST
ST
P0 RO—BUS, BUS—SR
P1空操作
P2空操作
P 1—DT
3
DT
P0 R1—BUS, BUS—MAR,
READ , WAIT
P1 MDR— BUS, BUS—LA
P;空操作
P 1—ET
3
ET
Po SR—BUS, ADD, ALU—LT
P1 LT—BUS, BUS—MDR,
WRITE, WAIT
P;空
P END
3
例 2 SUB (R0)+, X(R1)
FT微操作序列同例1 (所有指令FT都一樣)
ST
Po RO—BUS, BUS— MAR, READ, CLEALA, 1—CO, ADD, ALU—LT
P1 LT—BUS, BUS—RO, WAIT
P MDR— BUS, BUS—SR
2
P 1—DT
3
DT
Po PC—BUS, BUS—MAR, READ,
CLEAR LA, 1—CO, ADD, ALU—LT
P1 LT—BUS, BUS— PC, WAIT
P MDR— BUS, BUS—LA
2
P 1—DT '
3
DT'
P0 Rl—BUS, ADD, ALU—LT
P] LT—BUS, BUS—MAR, READ, WAIT
P MDR— BUS, BUS—LA
2
P 1—ET
3
ET
P0 SR—BUS, SUB, ALU—LT P] LT—BUS, BUS—MDR, WRITE, WAIT
P2空操作
P END
3
例 3 INC @(R0)+
FT 微操作序列同例1(P3 1—DT)
DT
P0 R0—BUS, BUS—MAR, READ, CLEARLA, 1—C0, ADD, ALU—LT
P1 LT—BUS, BUS— R0, WAIT
P MDR— BUS, BUS—TEMP
2
P 1 —DT '
3
DT'
P0 TEMP—BUS, BUS— MAR,
READ, WAIT
P1 MDR— BUS, BUS—DR
P;空操作
P 1—ET
3
ET
P0 DR—BUS, CLEAR LA, 1 — C0, ADD, ALU—LT
P1 LT—BUS, BUS— MDR, WRITE, WAIT
P; 空操作
P END
3
(上述例題掌握,可能會出類似的) 知識點6微程序設(shè)計技術(shù)
微指令由控制字段和下址字段組成。微指令格式大體可分為:水平型微指令,垂直型微指令
A微指令編碼通常有以下幾種方法:
(1)直接控制法(不譯法)
(2) 字段直接編譯法
A.相斥性微命令分在同一字段內(nèi),相容性微命令分在不同字段內(nèi)。
(3) 字段間接編譯法
例1:某機(jī)采用微程序控制方式,微指令字長28位,操作控制字段采用字段直接編譯法, 共有微命令36個,構(gòu)成5個相斥類,各包括3個、4個、7個、8個和14個微命令,順序 控制字段采用斷定方式,微程序流程中有分支處共4個
(1) 設(shè)計該機(jī)的微指令格式
(2) 控制存儲器的容量應(yīng)為多少?
解:(1)微指令格式
3+1=4 22=4
4+1=5 23=8>5
7+1=8 23=8
8+1=9 24=16>9
14+1=15 24=16>15
2+3+3+4+4=16
所以控制字段為16分值4處4+1=5 23=8>5需要三位測試判別16+3+9=28下址9
操作控制字段測試判別 下址
16
3
9
(2)由下址字段決定指令字長 29=512
控存容量512X28位
知識點7控制器的組成
A控制器的作用是控制程序的執(zhí)行,它必須具有以下基本功能:
1) 取指令
2) 分析指令
3) 執(zhí)行指令
B程序計數(shù)器(PC)
即指令地址寄存器。在某些計算機(jī)中用來存放當(dāng)前正在執(zhí)行的指令地址;而在另一些計算機(jī) 中則用來存放即將要執(zhí)行的下一條指令地址;而在有指令領(lǐng)取功能的計算機(jī)中,一般還需要 增加一個程序計數(shù)器用來存放下一條要取出的指令地址。
知識點8程序控制的基本概念
1) 微操作:完成指令功能所需的一系列基本操作。
2) 微指令:同時發(fā)出的控制信號所執(zhí)行的一組微操作。組成微指令的微操作又叫微命令。 一條指令的實現(xiàn),可由執(zhí)行若干條微指令來完成。
3) 微程序:完成指令功能所需的微指令序列的集合。
4) 控制存儲器:存放微程序與下址的存儲器。一般用ROM。
第七章
知識點1存儲系統(tǒng)的層次結(jié)構(gòu)
A衡量存儲器有三個指標(biāo):容量、速度和價格/位。
B操作系統(tǒng)的出現(xiàn)使主存、輔存形成了一個整體,主存-輔存層次。主存-輔存層次滿足了存 儲器的大容量和低成本的需求.
C為解決主存CPU之間的速度差異,在CPU和主存之間設(shè)置Cache.
(問:為什么設(shè)置cache)
D現(xiàn)代計算機(jī)的典型存儲結(jié)構(gòu):cache-主存-輔存
知識點2高速緩沖存儲器(cache)
A為解決CPU和主存之間的速度差距,提高整機(jī)的運算速度,在CPU和主存之間插入的由高 速電子器件組成的容量不大,但速度很快的存儲器。
B Cache特點:存取速度快,容量小,存儲控制和管理由硬件實現(xiàn)
C命中率:CPU所要的訪問信息在cache中的比率。
設(shè)cache的存儲時間為t,命中率為h,主存的存取時間為tM,貝I」
c M
平均存取時間=h?t + (1—h) (t +t )
c c M
D基本地址映像方式,它們是直接映像,全相聯(lián)映像,組相聯(lián)映像。(有錯字的話不給分)
第十章
知識點1 I/O設(shè)備數(shù)據(jù)傳送控制方式:
分為5種:
1) 程序直接控制方式
2) 程序中斷傳遞方式
3) 直接存儲器存取方式
4) I/O通道控制方式
5) 外圍處理機(jī)方式
知識點2程序中斷輸入輸出方式(不是重點,看明白了解即可)
A中斷定義:中斷是指計算機(jī)暫時終止它正在執(zhí)行的程序轉(zhuǎn)而去執(zhí)行請求中斷的那個外設(shè)或 事件的服務(wù)程序待處理完畢后又返回到暫時被中止的程序繼續(xù)執(zhí)行的一個過程。
B中斷系統(tǒng):計算機(jī)具有的上述功能,稱中斷功能,為實現(xiàn)中斷功能而設(shè)置的硬件和軟件, 統(tǒng)稱為中斷系統(tǒng)。
C中斷的作用
⑴ CPU與I/O設(shè)備并行工作
⑵硬件故障處理
(3) 實現(xiàn)人機(jī)聯(lián)系
(4) 實現(xiàn)多道程序和分時操作
(5) 實現(xiàn)實時處理
(6) 實現(xiàn)應(yīng)用程序和操作系統(tǒng)(管態(tài)程序)的聯(lián)系
(7) 多處理機(jī)系統(tǒng)各處理機(jī)間的聯(lián)系
D有關(guān)中斷的產(chǎn)生和響應(yīng)的概念
⑴中斷源:引起中斷的事件,即發(fā)出中斷請求的來源。
中斷源的種類:
外中斷---外部設(shè)備發(fā)來的中斷。打印請求 內(nèi)中斷---硬件故障或程序出錯引起的中斷。掉電 軟中斷—由中斷指令引起的中斷。Trap指令
(2) 中斷觸發(fā)器:設(shè)備控制器中設(shè)有“中斷觸發(fā)器”當(dāng)中斷源發(fā)來中斷時將其置“1”,由此 向CPU發(fā)出中斷請求信號。
(3) 優(yōu)先權(quán)是指多個中斷同時發(fā)生時,對各個中斷響應(yīng)的優(yōu)先次序。
(4) 中斷源很多時,一般把中斷按不同的類別分為若干級,稱為中斷級。
(5) 禁止中斷和中斷屏蔽
禁止中斷是指有中斷請求時,CPU不能中止現(xiàn)行程序的執(zhí)行,一般是通過使CPU內(nèi)部的“中 斷允許觸發(fā)器”清“0”來完成的。置“1”為允許中斷??捎瞄_、關(guān)中斷指令來實現(xiàn)。
中斷屏蔽:當(dāng)產(chǎn)生中斷請求后,用程序方式有選擇地封鎖部分中斷,而允許其他部分中斷得 到響應(yīng)。
(6) 中斷又分可屏蔽中斷和非屏蔽中斷。后者優(yōu)先權(quán)最咼。
E中斷處理
(1) 關(guān)中斷
(2) 保存斷點和現(xiàn)場
(3) 判別中斷源
(4) 開中斷
(5) 執(zhí)行中斷服務(wù)程序
(6) 退出中斷
F判別中斷源
(1)查詢法
⑵串行排隊鏈法
知識點2 DMA輸入輸出方式
A DMA三種工作方式
1. ) CPU暫停方式(CPU停止訪問主存)
2. ) CPU周期竊取方式(存儲器分時法)
3. )直接訪問存儲器工作方式(周期挪用法)