版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第一章
1.電子數(shù)字計算機(jī)和電子模擬計算機(jī)的區(qū)別在哪里?
解:電子數(shù)字計算機(jī)中處理的信息是在時間上離散的數(shù)字量,運(yùn)
算的過程是不連續(xù)的;電子模擬計算機(jī)中處理的信息是連續(xù)變化的物
理量,運(yùn)算的過程是連續(xù)的。
2.馮?諾依曼計算機(jī)的特點(diǎn)是什么?其中最主要的一點(diǎn)是什么?
解:馮?諾依曼計算機(jī)的特點(diǎn)如下:
①計算機(jī)(指硬件)應(yīng)由運(yùn)算器、存儲器、控制器、輸入設(shè)備和輸
出設(shè)備五大基本部件組成;
②計算機(jī)內(nèi)部采用二進(jìn)制來表示指令和數(shù)據(jù);
③將編好的程序和原始數(shù)據(jù)事先存入存儲器中,然后再啟動計算機(jī)
工作。
第③點(diǎn)是最主要的一點(diǎn)。
3.計算機(jī)的硬件是由哪些部件組成的?它們各有哪些功能?
解:計算機(jī)的硬件應(yīng)由運(yùn)算器、存儲器、控制器、輸入設(shè)備和輸
出設(shè)備五大基本部件組成。它們各自的功能是:
①輸入設(shè)備:把人們編好的程序和原始數(shù)據(jù)送到計算機(jī)中去,并且
將它們轉(zhuǎn)換成計算機(jī)內(nèi)部所能識別和接受的信息方式。
②輸出設(shè)備:將計算機(jī)的處理結(jié)果以人或其他設(shè)備所能接受的形式
送出計算機(jī)。
③存儲器:用來存放程序和數(shù)據(jù)。
④運(yùn)算器:對信息進(jìn)行處理和運(yùn)算。
⑤控制器:按照人們預(yù)先確定的操作步驟,控制整個計算機(jī)的各部
件有條不紊地自動工作。
4.什么叫總線?簡述單總線結(jié)構(gòu)的特點(diǎn)。
解:總線是一組能為多個部件服務(wù)的公共信息傳送線路,它能分
時地發(fā)送與接收各部件的信息。單總線結(jié)構(gòu)即各大部件都連接在單一
的一組總線上,這個總線被稱為系統(tǒng)總線。CPU與主存、CPU與外設(shè)
之間可以直接進(jìn)行信息交換,主存與外設(shè)、外設(shè)與外設(shè)之間也可以直
接進(jìn)行信息交換,而無須經(jīng)過CPU的干預(yù)。
5.簡單描述計算機(jī)的層次結(jié)構(gòu),說明各層次的主要特點(diǎn)。
解:現(xiàn)代計算機(jī)系統(tǒng)是一個硬件與軟件組成的綜合體,可以把它
看成是按功能劃分的多級層次結(jié)構(gòu)。
第0級為硬件組成的實(shí)體。
第1級是微程序級。這級的機(jī)器語言是微指令集,程序員用微指令
編寫的微程序一般是直接由硬件執(zhí)行的。
第2級是傳統(tǒng)機(jī)器級。這級的機(jī)器語言是該機(jī)的指令集,程序員用
機(jī)器指令編寫的程序可以由微程序進(jìn)行解釋。
第3級是操作系統(tǒng)級。從操作系統(tǒng)的基本功能來看,一方面它要直
接管理傳統(tǒng)機(jī)器中的軟硬件資源,另一方面它又是傳統(tǒng)機(jī)器的延伸。
第4級是匯編語言級。這級的機(jī)器語言是匯編語言,完成匯編語言
翻譯的程序叫做匯編程序。
第5級是高級語言級。這級的機(jī)器語言就是各種高級語言,通常用
編譯程序來完成高級語言翻譯的工作。
第6級是應(yīng)用語言級。這一級是為了使計算機(jī)滿足某種用途而專門
設(shè)計的,因此這一級語言就是各種面向問題的應(yīng)用語言。
6.計算機(jī)系統(tǒng)的主要技術(shù)指標(biāo)有哪些?
解:計算機(jī)系統(tǒng)的主要技術(shù)指標(biāo)有:機(jī)器字長、數(shù)據(jù)通路寬度、
主存容量和運(yùn)算速度等。
機(jī)器字長是指參與運(yùn)算的數(shù)的基本位數(shù),它是由加法器、寄存器的位
數(shù)決定的。
數(shù)據(jù)通路寬度是指數(shù)據(jù)總線一次所能并行傳送信息的位數(shù)。
主存容量是指主存儲器所能存儲的全部信息量。
運(yùn)算速度與機(jī)器的主頻、執(zhí)行什么樣的操作、主存本身的速度等許多
因素有關(guān)。
第二章
1.設(shè)機(jī)器數(shù)的字長8位(含1位符號位),分別寫出下列各二
進(jìn)制數(shù)的原碼、補(bǔ)碼和
反碼:0,—0,0.1000,—0.1000,0.1
111,-0.1111,1101,-11010
解:
真值原碼補(bǔ)碼反碼
0000000000000000000000000
-0100000000000000011111111
0.10000.10000000.10000000.1000000
-0.10001.10000001.10000001.0111111
0.11110.11110000.11110000.1111000
-0.11111.11110001.00010001.0000111
1101000011010000110100001101
—1101100011011111001111110010
2.寫出下列各數(shù)的原碼、補(bǔ)碼和反碼1.±0.一七一■,一父
lblblblblblb
解:以=7X2-,=0.0Ul
-^=4X2-1=0.0100
i=lX2-1=0.0001
真值原碼補(bǔ)碼反碼
L0.01110.01110.0111
1690.01000.01000.0100
,0.0001
0.00010.0001
0.00000.00000.0000
。
1.00000.00001.1111
-Ho1.00011.11111.1110
J
1.01001.11001.1011
J
1.01111.10011.1000
M
3.已知下列數(shù)的原碼表示,分別寫出它們的補(bǔ)碼表示:
[X1]原=0.10100,[X2]原=1.10111o
解:[X1]補(bǔ)=0.10100,[X2]補(bǔ)=1.0100
1
4.已知下列數(shù)的補(bǔ)碼表示,分別寫出它們的真值:
[X1]補(bǔ)=0.10100,[X2]補(bǔ)=1.10111
解:X1=0.10100,X2=-0.01001o
5.設(shè)-一個二進(jìn)制小數(shù)X沁,表示成X=0"aa°aa,其中a?&取“1”或“0”
(1)若要?*要滿足什么條件?
(2)若要存方.。?。要滿足什么條件?
(3)若要《為X>±.Q?a要滿足什么條件?
解:(1)X1土的代碼為:0」00001-0111111。
Q=1,a-儂—s+3+a=lo
(2)?的代碼為:
0.0010003
O
0.111111史
64
Q+Q=O,0=1或Q=0,a=I或a=lo
(3)士土的代碼為:
0.000101系
b4
0.0100005
s+a-CB=0,O=1,€B-H?=1aga+a=O.0=]或a=l,Q+a+a+a+
0=0。
<1>若婺~s筌滿足什么條件?
C2>若要一專*X*—亡,s-s耍,背足什么條件?
解:<1)一+白勺£弋"5為:
1.OOOOO1一
1.01X111一沔
6O?Ct0?4-Hg-Hs=J.o
(二)—d-三x*—+口勺Ji討g為:
O-i
1.ooiooo----o£-
1.ooiooi—必
1.OOllll一0-4
1.oioooo----
。。-
-HaO,e1sice-He-HsHs-HsOo
7.若上題中[X%改為[X>,結(jié)果如何?
解:設(shè)[X*=1.aaa很行?,
(1)£>一十的代碼為:
乙
_31
1.100001
64
-L
1.111111
64
0=1,a+°+o+a+a=lo
(2)一女)4一十的代碼為:
__L
1.110000
4
_15
1.110001
64
__9.
1.110111
64
_±
1.111000
8
CD?a=l,<s=O或a,a:?a=1,a+rs+a=0
8.一個n位字長的二進(jìn)制定點(diǎn)整數(shù),其中1位為符號位,分別
寫出在補(bǔ)碼和反碼兩
種情況下:
(1)模數(shù);(2)最大的正數(shù);
(3)最負(fù)的數(shù);(4)符號位的權(quán);
(5)1的表示形式;(6)0的表示形式。
解:
項(xiàng)目補(bǔ)碼反碼
模數(shù)Mod2"Mod
最大的正數(shù)2,1-12**-1
11
最負(fù)的數(shù)—9"一⑵一D
符號位的權(quán)nn1>1
-1的裊示形式1111111111111110
00000000
。的裊示形式00000000
11111111
9.某機(jī)字長16位,問在下列幾種情況下所能表示數(shù)值的范圍:
(1)無符號整數(shù);(2)用原碼表示定點(diǎn)小數(shù);
(3)用補(bǔ)碼表示定點(diǎn)小數(shù);(4)用原碼表示定點(diǎn)整數(shù);
(5)用補(bǔ)碼表示定點(diǎn)整數(shù)。
解:(1)0<%?216-1)
(2)-(l-2-ls)<X?l-2-ls)
(3)-1-—2T5)
(4)-(215-1)<X<(215-1)
(5)一2-(215-1)
10.某機(jī)字長32位,試分別寫出無符號整數(shù)和帶符號整數(shù)(補(bǔ)
碼)的表示范圍(用十
進(jìn)制數(shù)表示)。
解:無符號整數(shù):04看〈(2紀(jì)一1)。
補(bǔ)碼:一23yx《2”
11.某浮點(diǎn)數(shù)字長12位,其中階符1位,階碼數(shù)值3位,數(shù)
符1位,尾數(shù)數(shù)值7位,階碼以2為底,階碼和尾數(shù)均用補(bǔ)碼表
示。它所能表示的最大正數(shù)是多少?最小規(guī)格化正數(shù)是多少?絕對
值最大的負(fù)數(shù)是多少?
解:最大正數(shù)=(1一2一)X爐"T=(1-2-7)*2'=127。
最小規(guī)格化正數(shù)=2一】X2-=2-X2-8=27=+.
7
絕對值最大的負(fù)數(shù)=一lx/-=-1X2=-128O
12.某浮點(diǎn)數(shù)字長16位,其中階碼部分6位(含1位階符),
移碼表示,以2為底;尾
數(shù)部分1。位(含1位數(shù)符,位于尾數(shù)最高位),補(bǔ)碼表示,規(guī)
格化。分別寫出下列各題的二
進(jìn)制代碼與十進(jìn)制真值。
(1)非零最小正數(shù);
(2)最大正數(shù);
(3)絕對值最小負(fù)數(shù);
(4)絕對值最大負(fù)數(shù)。
解:(1)非零最小止數(shù):000000,0.100000000;2TX2Y=2一"0
25-I-931
(2)最大正數(shù)jllllll.O,111111111;(1一2T)X2=(1-2)X2O
(3)絕對值最小負(fù)數(shù):000000,1,011111111;-(2-1+2-4)X2-*。
(4)絕對值最大負(fù)數(shù),000000000=-2”。
13.一浮點(diǎn)數(shù),其階碼部分為p位,尾數(shù)部分為q位,各包含1
位符號位,均用補(bǔ)碼表
示;尾數(shù)基數(shù)r=2,該浮點(diǎn)數(shù)格式所能表示數(shù)的上限、下限及
非零的最小正數(shù)是多少?寫
數(shù)據(jù)的機(jī)器層次表示出表達(dá)式。
解:上限(最大正數(shù))=(1一2-"-。)*/'
下限(絕對值最大負(fù)數(shù))=一1乂對‘
最小正數(shù)=2-<fX2-2”二
最小規(guī)格化正數(shù)=2TX2-2"二
14.若上題尾數(shù)基數(shù)r=16,按上述要求寫出表達(dá)式。
解:上限(最大正數(shù))=(1一2一37)X16?”“一,
下限(絕對值最大負(fù)數(shù))=-1X16?”'一
最小正數(shù)MZ-XWT""。
最小規(guī)格化正數(shù)=16"X167"“.
15.某浮點(diǎn)數(shù)字長32位,格式如下。其中階碼部分8位,以
2為底,移碼表示;尾數(shù)部分一共24位(含1位數(shù)符),補(bǔ)碼
表示?,F(xiàn)有一浮點(diǎn)代碼為(8C5A3E00)16,試寫出它所表示
的十進(jìn)制真值。
07893
階碼數(shù)符尾數(shù)
解:(8C5A3E00>6=10001100010110100011111000000000B.
!
0.10110100011111X2-=(101101000111.11>=(2887.75)io0
16.試將(一0.1101)2用IEEE短浮點(diǎn)數(shù)格式表示
出來。
解:-1
0.1101=1.101X2o
符號位=1。
階碼=127—1=126。
1,01111110,10100000000000000000000o
結(jié)果=BF500000H。
17.將下列十進(jìn)制數(shù)轉(zhuǎn)換為IEEE短浮點(diǎn)數(shù):
解:(4
1)28.75=11100.11=1.110011X2o
符號位=0。
階碼=127+4=131。
0,10000011,110011000000000000000000
結(jié)果=41E60000H。
9
(2)624=1001110000=1.001110000X2o
符號位=0。
階碼=127+9=136。
0,10001000,00111000000000000000000o
結(jié)果=441C0000H。
-
(3)—0.625=—0.101=-1.01X2'o
符號位=1。
階碼=127-1=126。
1.01111110,01000000000000000000000,
結(jié)果=BF200000H。
(4)+0.0。
結(jié)果=00000000H。
,
(5)-1000.5=1111101000.1=1.1111010001X2o
符號位=1。
階碼=127+9=136。
1,10001000,illlOlOOOlOOOOOOOOOOOOOo
結(jié)果=C47A2000H。
18.將下列IEEE短浮點(diǎn)數(shù)轉(zhuǎn)換為十進(jìn)制數(shù):
(1)11OOOOOO1111OOOOOOOOOOOO0
OOOOOOO;
(2)0011111100010000000000000
0000000;
(3)0100001110011001000000000
0000000;
(4)0100000000000000000000000
0000000;
(5)0100000100100000000000000
0000000;
(6)0000000000000000000000000
0000000o
解:(1)1,10000001.11100000000000000000000
符號位=L
階碼=129—127=2。
2
1.111X2=111.1B=7.58
所以結(jié)果=一7.5。
(2)0,01111110,00100000000000000000000
符號位=0。
階碼=126—127=
1.001X2-1=0.1001B=0.5625。
所以,結(jié)果=0.5625。
(3)0,10000111,00110010000000000000000
符號位=0。
階碼=135—127=8。
8
1.0011001X2=100110010B=306o
所以,結(jié)果=306。
(4)0,10000000,00000000000000000000000
符號位=0。
階碼=128—127=1。
1
1.0X2=10B=2o
所以,結(jié)果=2。
(5)0,10000010,01000000000000000000000
符號位=0。
階碼=130-127=3。
3
1.01X2=1010B=10o
所以,結(jié)果=10。
(6)0,00000000,00000000000000000000000
階碼和尾數(shù)都等于全0,結(jié)果=0。
19.對下列ASCII碼進(jìn)行譯碼:
1001001,0100001,1100001,1110
111
1000101,1010000,1010111,0100
100
解:以上ASCII碼分別為I,ba,w,E,P,W.$。
20.以下列形式表示(5382)10o
(1)8421碼;(2)余3碼;
(3)2421碼;(4)二進(jìn)制數(shù)。
解:(1)0101001110000010.
(2)1000011010110101.
(3)1011001111100010,
(4)1010100000110,
21.填寫下列代碼的奇偶校驗(yàn)位,現(xiàn)設(shè)為奇校驗(yàn):
10100001
00011001
01001110
解:3個代碼的校驗(yàn)位分別是0,0,1。
22.已知下面數(shù)據(jù)塊約定:橫向校驗(yàn)、縱向校驗(yàn)均為奇校驗(yàn),請
指出至少有多少位出錯。
aaQk(zQ(D校驗(yàn)位
10011011-0
00110101-1
1101000o-*0
11100000f0
01001111-*0
▼1TVTV1
校驗(yàn)位10101111
解:經(jīng)檢測<B和。列出錯,所以至少有兩位出錯。
23.求有效信息位為。1101110的海明校驗(yàn)碼。
解:P5D8D7D6D5P4D4D3D2P3DlP2Pl
P1=D1十D2十D4十D5十D7=0十1十I十。十1=1
P2=D1十D3十D4十D6十D7=0十1十1十1十1=0
P3=D2十D3十D4十D8=1十1十1十0=1
P4=D5十D6十D7十D8=0十1十1十0=0
P5=D1十D2十D3十D5十D6十D8=0十1十1十0十1十0=1
所以,海明校驗(yàn)碼=10U0QU110Ql,
24.設(shè)計算機(jī)準(zhǔn)備傳送的信息是:1010110010001
111,生成多項(xiàng)式是X5+X2+1,計算校驗(yàn)位,寫出CRC
碼。
5:
解:生成多項(xiàng)式X+X+l=100101o
首先將準(zhǔn)備傳送的信息左移5位;101011001000111100000o
然后1010110010001111000004-100101,余數(shù)=10011。
所以,CRC碼=101011001000111110011。
第三章
1.指令長度和機(jī)器字長有什么關(guān)系?半字長指令、單字長指令、
雙字長指令分別表示什么意思?
解:指令長度與機(jī)器字長沒有固定的關(guān)系,指令長度可以等于機(jī)
器字長,也可以大于或小于機(jī)器字長。通常,把指令長度等于機(jī)器字
長的指令稱為單字長指令;指令長度等于半個機(jī)器字長的指令稱為半
字長指令;指令長度等于兩個機(jī)器字長的指令稱為雙字長指令。
2.零地址指令的操作數(shù)來自哪里?一地址指令中,另一個操作數(shù)
的地址通??刹捎檬裁磳ぶ贩绞将@得?各舉一例說明。
解:雙操作數(shù)的零地址指令的操作數(shù)來自堆棧的棧頂和次棧頂。
雙操作數(shù)的一地址指令的另一個操作數(shù)通常可采用隱含尋址方式獲
得,即將另一操作數(shù)預(yù)先存放在累加器中。例如,前述零地址和一地
址的加法指令。
3.某機(jī)為定長指令字結(jié)構(gòu),指令長度16位;每個操作數(shù)的地址
碼長6位,指令分為無操作數(shù)、單操作數(shù)和雙操作數(shù)三類。若雙操
作數(shù)指令已有K種,無操作數(shù)指令已有L種,問單操作數(shù)指令最多可
能有多少種?上述三類指令各自允許的最大指令條數(shù)是多少?
解:X=(24-K)X2?一步k
雙操作數(shù)指令的最大指令數(shù):2*一1。
單操作數(shù)指令的最大指令數(shù)J5X26-1(假設(shè)雙操作數(shù)指令僅1條.為無操作數(shù)指
令留出1個擴(kuò)展窗口)。
無操作數(shù)指令的最大指令數(shù):216一2”-2s。其中212為表示某條二地址指令占用的
編碼數(shù),2,為表示某條單地址指令占用的編碼數(shù)。此時雙操作數(shù)和單操作數(shù)指令各僅有
1條。
4.設(shè)某機(jī)為定長指令字結(jié)構(gòu),指令長度12位,每個地址碼占3
位,試提出一種分配
方案,使該指令系統(tǒng)包含:4條三地址指令,8條二地址指令,1
80條單地址指令。
解:4條三地址指一令
OOOXXXYYYZZZ
OliXXXYYYZZZ
8條二地士1上指令
1OOOOOXXXYYY
1OOillXXXYYY
180條單地力上指令
1O1OOOOOOXXX
111IIOOilXXX
5.指令格式同上題,能否構(gòu)成:三地址指令4條,單地址指令2
55條,零地址指令64條?為什么?
解:三地址指令4條
000XXXYYYZZZ
011XXXYYYZZZ
單地址指令255條
100000000XXX
111111110YYY
只能再擴(kuò)展出零地址指令8條,所以不能構(gòu)成這樣的指令系統(tǒng)。
6.指令中地址碼的位數(shù)與直接訪問的主存容量和最小尋址單位有
什么關(guān)系?
解:主存容量越大,所需的地址碼位數(shù)就越長。對于相同容量
來說,最小尋址單位越小,地址碼的位數(shù)就越長。
7.試比較間接尋址和寄存器間址。
解:間接尋址方式的有效地址在主存中,操作數(shù)也在主存中;寄
存器間址方式的有效地址在寄存器中,操作數(shù)在主存中。所以間接尋
址比較慢。
8.試比較基址尋址和變址尋址。
解:基址尋址和變址尋址在形成有效地址時所用的算法是相同
的,但是它們兩者實(shí)際上是有區(qū)別的。一般來說,變址尋址中變址寄
存器提供修改量(可變的),而指令中提供基準(zhǔn)值(固定的);基
址尋址中基址寄存器提供基準(zhǔn)值(固定的),而指令中提供位移量
(可變的)。這兩種尋址方式應(yīng)用的場合也不同,變址尋址是面向
用戶的,用于訪問字符串、向量和數(shù)組等成批數(shù)據(jù);而基址尋址面向
系統(tǒng),主要用于邏輯地址和物理地址的變換,用以解決程序在主存中
的再定位和擴(kuò)大尋址空間等問題。在某些大型機(jī)中,基址寄存器只能
由特權(quán)指令來管理,用戶指令無權(quán)操作和修改。
9.某機(jī)字長為16位,主存容量為64K字,采用單字長單地址
指令,共有50條指令。若有直接尋址、間接尋址、變址尋址、相
對尋址四種尋址方式,試設(shè)計其指令格式。
解:操作碼6位,尋址方式2位,地址碼8位。
10.某機(jī)字長為16位,主存容量為64K字,指令格式為單字
長單地址,共有64條指令。試說明:
(1)若只采用直接尋址方式,指令能訪問多少主存單元?
(2)為擴(kuò)充指令的尋址范圍,可采用直接/間接尋址方式,若只
增加一位直接/間接標(biāo)志,指令可尋址范圍為多少?指令直接尋址
的范圍為多少?
(3)采用頁面尋址方式,若只增加一位Z/C(零頁/現(xiàn)行頁)標(biāo)
志,指令尋址范圍為多少?指令直接尋址范圍為多少?
(4)采用(2)、(3)兩種方式結(jié)合,指令的尋址范圍為多
少?指令直接尋址范圍為多少?
解:因?yàn)橛嬎銠C(jī)中共有64條指令,所以操作碼占6位,其余部分為地址碼或標(biāo)志位。
(1)若只采用直接尋址方式,地址碼部分為10位,指令能訪問的主存單元數(shù)為限=
1K字。
(2)若采用直接/間接尋址方式,將增加了一位直接/間接標(biāo)志,地址碼部分為9位.
指令直接尋址的范圍為29=0.5K字,指令可尋址范圍為整個主存空間2U-G4K字。
(3)若采用頁面尋址方式,將增加一位Z/C(零頁/現(xiàn)行頁)標(biāo)志,所以指令直接尋址
范圍仍為29=0.5K字,指令尋址范圍仍為216=64K字。
(4)此時將需酶和Z/C兩個標(biāo)志位.所以指令直接尋址范圍為2s=0.25K字,指
令的可尋址范圍仍為2"=64K字。
11.設(shè)某機(jī)字長32位,CPU有32個32位的通用寄存器,
設(shè)計一個能容納64種操作的單字長指令系統(tǒng)。
(1)如果是存儲器間接尋址方式的寄存器一存儲器型指令,能直
接尋址的最大主存空間是多少?
(2)如果采用通用寄存器作為基址寄存器,能直接尋址的最大主
存空間又是多少?
解:因?yàn)橛嬎銠C(jī)中共有64條指令,所以操作碼占6位;32
個通用寄存器,寄存器編號占5位;其余部分為地址碼或標(biāo)志位。
(1)如果是存儲器間接尋址方式的寄存器一存儲器型指令,操作
碼6位,寄存器編號5位,間址標(biāo)志1位,地址碼20位,直接
尋址的最大主存空間是力?字O
(2)如果采用通用寄存器作為基址寄存器,EA=(R>.)-A,能直
接尋址的最大主存空間是2契字。
12.已知某小型機(jī)字長為16位,其雙操作數(shù)指令的格式如下:
0567815
0PRA
其中:0P為操作碼,R為通用寄存器地址。試說明下列各種情況下
能訪問的最大主存區(qū)域有多少機(jī)器字?
(1)A為立即數(shù)。
(2)A為直接主存單元地址。
(3)A為間接地址(非多重間址)。
(4)A為變址尋址的形式地址,假定變址寄存器為R1(字長為
16位)
解:(1)1個機(jī)器字。
(2)256個機(jī)器字。
(3)65536個機(jī)器字。
(4)65536個機(jī)器字。
13.計算下列4條指令的有效地址(指令長度為16位)。
(1)000000Q(2)100000Q(3)170710Q
(4)012305Q
假定:上述4條指令均用八進(jìn)制書寫,指令的最左邊是一位間址指示位@Q=0,直
接?址@=1,間接尋址),且具有多重間訪功能:指令的最右邊兩位為舊式地址:主存容
量限單元,表3-4為有關(guān)主存單元的內(nèi)容(八進(jìn)制)。
表左4習(xí)題13的表格解:(1)000000Q
地址內(nèi)容因?yàn)橹噶畹淖罡呶粸?,故為直接尋址,EA=
00000100002A=00000Q0
00001046710(2)100000Q
00002054304因?yàn)橹噶畹淖罡呶粸?.故指令為間接尋址。
00003100000(00000)=100002,最高位仍為1,繼續(xù)間接尋址。
00004102543(00002)=054304,其最高位為0,表示已找到有效
00005100001地址,EA=54304Q0
00006063215(3)170710Q
00007077710因?yàn)橹噶畹淖罡呶粸?.故指令為間接尋址,
00010100005(00010)=100005,最高位仍為1,繼續(xù)間接尋址。
(00005)=100001,最高位仍為1.繼續(xù)間接尋址,
(00001)=046710,其最高位為0,表示已找到有效地址,EA=46710Q。
(4)012305Q
因?yàn)橹噶畹淖罡呶粸?,故為直接W址.EA=A=00005Q。
14.假定某機(jī)的指令儕式如下:
1110987650
?OP11LZ/CA
其中:
址:
Bit8=I:變址寄存器1>尋址;
B“7=l:變址寄存器k尋址;
Bit6(零頁/現(xiàn)行頁尋址):Z/C=0,表示0頁面:
Z/C=l,表示現(xiàn)行頁面,即指令所在頁面。
若主存容量為小個存儲單元,分為2°個頁面.每個頁面有26個字。
設(shè)有關(guān)寄存器的內(nèi)容為
(PC)=0340Q(Ii)=1111Q(1=)=0256Q
試計算下列指令的有效地址。
(1)1046Q
(2)2433Q
(3)3215Q
(4)1111Q
解:(1)1046Q=001000100110
因4個位均為。?故直接尋?At?EAA^0046Qe
(2)2433Q=010100OilOil
因?yàn)?=1.故為變址寄存器1尋址,EA=(Ti)-1-A=1111-(-33=11449),
(3)3215Q=011010001101
因?yàn)锽it7(I2)=i,故為變址寄存器2尋址,EA=(L)+A=0256+I5=0273Q。
<4)1111Q=OO1001001001
因?yàn)锽it6(Z/C>=1,故為當(dāng)前頁尋址.EA=(PC)”〃A=O3〃11=O31IQ。
15.假定指令格式如下:
151211109870
OPLkz/cD/IA
其中:D/I為直接/間接尋址標(biāo)志,D/I=O表示直接尋址,D/I=l表示間接尋址。其
余標(biāo)志位同題14說明。
若主存容量為*個存儲單元,分為2*個頁面.每個頁面有2s個字。
設(shè)有關(guān)寄存器的內(nèi)容為
(Ii)=002543Q(I:)=063215Q(PC)=004350Q
試計算下列指令的有效地址。
(1)152301Q
(2)074013Q
(3)161123Q
(4)140011Q
解:Q)152301(?=1101010011000001
因?yàn)锽itlO(L)=I.故為變址寄存器2尋址,EA=(fc)+A=063215+
301=063516Qo
(2)074013Q=0ill100000001011
因?yàn)锽itll(h)=i,故為變址寄存器1尋址,EA=(I:)+A=002543+
013=002556Qo
(3)161i23Q=l110001001010Oil
因?yàn)锽it9(Z/C)=1,故為當(dāng)前頁尋址,EA=(PC)//A=004123Qo
(4)1400ilQ=liOO000000OOi001
因?yàn)?個標(biāo)志位均為0,故為直接尋址,EA=A=000011Qo
16.舉例說明哪幾種尋址方式除去取指令以外不訪問存儲器?哪
幾種尋址方式除去取指令外只需訪問一次存儲器?完成什么樣的指
令,包括取指令在內(nèi)共訪問4次存儲器?
解:除去取指令以外不訪問存儲器:立即尋址,寄存器尋址。
除去取指令外只需訪問一次存儲器:直接尋址,寄存器間接尋址,變
址尋址,基址尋址,相對尋址,頁面尋址。
二級間接尋址包括取指令在內(nèi)共訪問4次存儲器。
17.設(shè)相對尋址的轉(zhuǎn)移指令占兩個字節(jié),第一個字節(jié)是操作碼,
第二個字節(jié)是相對位移量,用補(bǔ)碼表示。假設(shè)當(dāng)前轉(zhuǎn)移指令第一字節(jié)
所在的地址為2000H,且CPU每取一個字節(jié)便自動完成(PC)+1
TPC的操作。試問當(dāng)執(zhí)行JMP*+8和JMP*-9指令(倡為
相對尋址特征)時,轉(zhuǎn)移指令第二字節(jié)的內(nèi)容各為多少?轉(zhuǎn)移的目
的地址各是什么?
解:轉(zhuǎn)移指令第二字節(jié)的內(nèi)容分別為:00001000(+8),11110111
(―9)
轉(zhuǎn)移的目的地址分別為:200AH,1FF9H。
20.什么叫主程序和子程序?調(diào)用子程序時還可采用哪幾種方法保
存返回地址?畫圖說明調(diào)用子程序的過程。
解:主程序就是指通常的程序,而子程序是一組可以公用的指令
序列,只要知道子程序的入口地址就能調(diào)用它。
保存返回地址的方法有多種:
(1)用子程序的第一個字單元存放返回地址。轉(zhuǎn)子指令把返回地
址存放在子程序的第一個字單元中,子程序從第二個字單元開始執(zhí)
行。返回時將第一個字單元地址作為間接地址,采用間址方式返回主
程序。
(2)用寄存器存放返回地址。轉(zhuǎn)子指令先把返回地址放到某一個
寄存器中,再由子程序?qū)⒓拇嫫髦械膬?nèi)容轉(zhuǎn)移到另一個安全的地方。
(3)用堆棧保存返回地址。
調(diào)用子程序的過程如圖3唱8所示,此時返回地址保存在堆棧中。
王程序于腥序
A:-------------
K:CALLA-/Z//Z--------------
Af+1:----------------------------------------
-------------'''"'''RET
圖3-8主程序謝用子程序的過程
21.在某些計算機(jī)中,調(diào)用子程序的方法是這樣實(shí)現(xiàn)的:轉(zhuǎn)子指令
將返回地址存入子程序的第一個字單元,然后從第二個字單元開始執(zhí)
行子程序,請回答下列問題:
(1)為這種方法設(shè)計一條從子程序轉(zhuǎn)到主程序的返回指令。
(2)在這種情況下,怎么在主、子程序間進(jìn)行參數(shù)的傳遞?
(3)上述方法是否可用于子程序的嵌套?
(4)上述方法是否可用于子程序的遞歸(即某個子程序自己調(diào)用
自己)?
(5)如果改用堆棧方法,是否可實(shí)現(xiàn)(4)所提出的問題?
解:(1)返回指令通常為零地址指令。返回地址保存在堆棧
中,執(zhí)行返回指令時自動從堆棧中彈出。而目前返回地址是保存在子
程序的第一個單元中,故此時返回指令不能再是零地址指令了,而應(yīng)
當(dāng)是一地址指令。如:
JMP子程序首地址
間接尋址可找到返回地址,然后無條件轉(zhuǎn)移到返回的位置。
(2)在這種情況下,可利用寄存器或主存單元進(jìn)行主、子程序間
的參數(shù)傳遞。
(3)可以用于子程序的嵌套(多重轉(zhuǎn)子)。因?yàn)槊總€返回地址都
放在調(diào)用的子程序的第一個單元中。
(4)不可以用于子程序的遞歸,因?yàn)楫?dāng)某個子程序自己調(diào)用自己
時,子程序第一個單元的內(nèi)容將被破壞。
(5)如果改用堆棧方法,可以實(shí)現(xiàn)子程序的遞歸,因堆棧具有后
進(jìn)先出的功能。
第四章
1.證明在全加器里,進(jìn)位傳遞函數(shù)—4,+8=人十8。
解:并行加法器中的每一個全加器都有一個從低位送來的進(jìn)位和
一個傳送給較高位的進(jìn)位。進(jìn)位表達(dá)式為?="B+(人十氏)C7欲證
明P=.4,+B=4,十也就是要證明
C,=/IE+(4?A.)CT=AB+(4+B)CT
用卡諾圖法,圖4-10(a)和4-10(b)分別是兩個邏輯表達(dá)式
的卡諾圖。兩個卡諾圖相同,兩個邏輯表達(dá)式就相等,則進(jìn)位傳遞函
數(shù)的兩種形式相等。
2.某加法器采用組內(nèi)并行、組間并行的進(jìn)位鏈,4
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 小學(xué)五年級混合運(yùn)算練習(xí)題
- 小學(xué)四年級數(shù)學(xué)乘除法豎式計算題
- 小學(xué)數(shù)學(xué)二年級100以內(nèi)連加連減口算題
- 高考語文模擬試題(二十)
- 2025年中考語文文言文總復(fù)習(xí)-學(xué)生版-專題01:文言文閱讀之理解實(shí)詞含義(講義)
- 北京市豐臺區(qū)2022-2023學(xué)年高三上學(xué)期期末練習(xí)英語學(xué)科試卷
- 房屋裝修行業(yè)顧問工作總結(jié)
- 制藥業(yè)行政后勤工作總結(jié)
- 《公司團(tuán)隊培訓(xùn)游戲》課件
- 演出票務(wù)公司營業(yè)員服務(wù)總結(jié)
- 各類儀器儀表校驗(yàn)記錄表18篇
- 自動生產(chǎn)排程 SMT 多線體 版
- 防造假管理程序文件
- 譯林版英語八年級上冊單詞表
- 中石油職稱英語
- 2023年副主任醫(yī)師(副高)-神經(jīng)內(nèi)科學(xué)(副高)考試歷年真題薈萃帶答案
- 國家義務(wù)教育質(zhì)量監(jiān)測科學(xué)四年級創(chuàng)新作業(yè)測試卷【附答案】
- 硫磺安全技術(shù)說明書MSDS
- 工程施工現(xiàn)場存在的環(huán)保問題及解決建議
- 鍋爐過熱蒸汽溫度控制系統(tǒng)課程設(shè)計
- 四川省成都市2021-2022學(xué)年高一(上)期末調(diào)研考試物理試題 Word版
評論
0/150
提交評論