計(jì)算機(jī)組成原理習(xí)題答案_第1頁
計(jì)算機(jī)組成原理習(xí)題答案_第2頁
計(jì)算機(jī)組成原理習(xí)題答案_第3頁
計(jì)算機(jī)組成原理習(xí)題答案_第4頁
計(jì)算機(jī)組成原理習(xí)題答案_第5頁
已閱讀5頁,還剩49頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第一章

1.電子數(shù)字計(jì)算機(jī)和電子模擬計(jì)算機(jī)的區(qū)別在哪里?

解:電子數(shù)字計(jì)算機(jī)中處理的信息是在時(shí)間上離散的數(shù)字量,運(yùn)算的過程是不連續(xù)的;電子模擬計(jì)算

機(jī)中處理的信息是連續(xù)變化的物理量,運(yùn)算的過程是連續(xù)的。

2.馮?諾依曼計(jì)算機(jī)的特點(diǎn)是什么?其中最主要的-?點(diǎn)是什么?

解:馮?諾依曼計(jì)算機(jī)的特點(diǎn)如卜.:

①計(jì)算機(jī)(指硬件)應(yīng)由運(yùn)算器、存儲(chǔ)器、控制器、輸入設(shè)備和輸出設(shè)備五大基本部件組成;

②計(jì)算機(jī)內(nèi)部采用二進(jìn)制來表示指令和數(shù)據(jù);

③將編好的程序和原始數(shù)據(jù)事先存入存儲(chǔ)器中,然后再啟動(dòng)計(jì)算機(jī)工作。

第③點(diǎn)是最主要的一點(diǎn)。

3.計(jì)算機(jī)的硬件是由哪些部件組成的?它們各有哪些功能?

解:計(jì)算機(jī)的硬件應(yīng)由運(yùn)算器、存儲(chǔ)器、控制器、輸入設(shè)備和輸出設(shè)備五大基本部件組成。它們各自

的功能是:

①輸入設(shè)備:把人們編好的程序和原始數(shù)據(jù)送到計(jì)算機(jī)中去,并且將它們轉(zhuǎn)換成計(jì)算機(jī)內(nèi)部所能識(shí)別和接

受的信息方式。

②輸出設(shè)備:將計(jì)算機(jī)的處理結(jié)果以人或其他設(shè)備所能接受的形式送出計(jì)算機(jī)。

③存儲(chǔ)器:用來存放程序和數(shù)據(jù)。

④運(yùn)算器:對(duì)信息進(jìn)行處理和運(yùn)算。

⑤控制器:按照人們預(yù)先確定的操作步驟,控制整個(gè)計(jì)算機(jī)的各部件有條不紊地自動(dòng)工作。

4.什么叫總線?簡(jiǎn)述單總線結(jié)構(gòu)的特點(diǎn)。

解:總線是一組能為多個(gè)部件服務(wù)的公共信息傳送線路,它能分時(shí)地發(fā)送與接收各部件的信息。單總

線結(jié)構(gòu)即各大部件都連接在單一的一組總線上,這個(gè)總線被稱為系統(tǒng)總線。CPU與主存、CPU與外設(shè)之

間可以直接進(jìn)行信息交換,主存與外設(shè)、外設(shè)與外設(shè)之間也可以直接進(jìn)行信息交換,而無須經(jīng)過CPU的

干預(yù)。

5.簡(jiǎn)單描述計(jì)算機(jī)的層次結(jié)構(gòu),說明各層次的主要特點(diǎn)。

解:現(xiàn)代計(jì)算機(jī)系統(tǒng)是一個(gè)硬件與軟件組成的綜合體,可以把它看成是按功能劃分的多級(jí)層次結(jié)構(gòu)。

第0級(jí)為硬件組成的實(shí)體。

第1級(jí)是微程序級(jí)。這級(jí)的機(jī)器語言是微指令集,程序員用微指令編寫的微程序一般是直接由硬件執(zhí)行的。

第2級(jí)是傳統(tǒng)機(jī)器級(jí)。這級(jí)的機(jī)器語言是該機(jī)的指令集,程序員用機(jī)器指令編寫的程序可以由微程序進(jìn)行

解釋。

第3級(jí)是操作系統(tǒng)級(jí)。從操作系統(tǒng)的基本功能來看,?方面它要直接管理傳統(tǒng)機(jī)器中的軟硬件資源,另?

方面它又是傳統(tǒng)機(jī)器的延伸。

第4級(jí)是匯編語言級(jí)。這級(jí)的機(jī)器語言是匯編語言,完成匯編語言翻譯的程序叫做匯編程序。

第5級(jí)是高級(jí)語言級(jí)。這級(jí)的機(jī)器語言就是各種高級(jí)語言,通常用編譯程序來完成高級(jí)語言翻譯的工作。

第6級(jí)是應(yīng)用語言級(jí)。這?級(jí)是為了使計(jì)算機(jī)滿足某種用途而專門設(shè)計(jì)的,因此這?級(jí)語言就是各種面向

問題的應(yīng)用語言。

6.計(jì)算機(jī)系統(tǒng)的主要技術(shù)指標(biāo)有哪些?

解:計(jì)算機(jī)系統(tǒng)的主要技術(shù)指標(biāo)有:機(jī)器字長(zhǎng)、數(shù)據(jù)通路寬度、主存容量和運(yùn)算速度等。

機(jī)器字長(zhǎng)是指參與運(yùn)算的數(shù)的基本位數(shù),它是由加法器、寄存器的位數(shù)決定的。

數(shù)據(jù)通路寬度是指數(shù)據(jù)總線一次所能并行傳送信息的位數(shù)。

主:存容量是指生存儲(chǔ)器所能存儲(chǔ)的全部信息量。

運(yùn)算速度與機(jī)器的主頻、執(zhí)行什么樣的操作、主存本身的速度等許多因素有關(guān)。

第二章

1.設(shè)機(jī)器數(shù)的字長(zhǎng)8位(含1位符號(hào)位),分別寫出卜列各二進(jìn)制數(shù)的原碼、補(bǔ)碼和

反碼:0,一0,0.1000,一0.1000,0.1111,-0.1111,11

01,-1101o

解:

真值原碼補(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ǔ)碼和反碼545,士。V

7

解-

?=7X21=0.0山

16

J,

16=4X2-4=0.0100

_Z,0.01110.01110.0111

16

JLO.O1OO0.01000.0100

16

,1,O.OOO10.00010.0001

16O

0.00000.00000.0000

-O1.00000.00001.1111

161.00011.11111.1110

,

1G

工1.01001.11001.1011

161.01111.10011.1000

3.已知下列數(shù)的原碼表示,分別寫出它們的補(bǔ)碼表示:

[X1]原=0.10100,[X2]原=1.10111?

解:[XI]補(bǔ)=0.10100,[X2]補(bǔ)=1.01001。

4.已知下列數(shù)的補(bǔ)碼表示,分別寫出它們的真值:

[XI]補(bǔ)=0.10100,[X2]補(bǔ)=1.10111

解:Xl=0.10100,X2=-0.01001o

5.設(shè)一個(gè)二進(jìn)制小數(shù),表不成.其中。~&取“JL”或“0”:

(1)若要X〉方i?a要滿足什么條件?

(2)若要.Q?a要滿足什么條件?

(3)若要?a要滿足什么條件?

解:(1)r-+的代碼為:o/ooooi~o」iuu。

Q=I,CK,-3-。+3+丁=1.0

⑶尤>^的代碼為:

0.001000X

8

0.111111£3

64

Q+Q=0?Q=1或。=0,。=1或0=1。

(3)十音X>土的代碼為:

0.000101工

64

0.010000,r

ai+a+g=0.ai=l,a+?>=l或。-a=0,a=l或a=l,o-a+,4+0+

=

?0o

6.rX3^X.rnctzeaG6,

Cl>若要AO—=要滿足什么條f牛?

<2>若要一方'X-—七,s饕?滿足什么條件?

第:(1)—冷白勺fg而嗎為二

1.OOOOO1

64

1.011X11_

64

CH=0.8S5HG-HCJB:=-Lo

C2)一專二X導(dǎo)一十的彳匕四為:

1.OO1OOO__±_

8

1.OO1OO1___9

64

1.OO1111_i5

64

1

1.O1OOOO

o-HaQ,s1s=_L,。-Hs-Hg-He-HsO。

7.若上題中[X上改為TO卜,結(jié)果如何?

解:設(shè)[X%=1.a。缶@s律.

(1)、>一」的代碼為:

1.100001_1L

64

1.111111_-L

64

。=1,a+o+。+。+s=lo

(2)一方二4—十的代碼為:

1.110000__L

4

1.110001_15

64

1.110111__9-

64

1.111000_±

8

a?a=l,g=O或Q?a?a=l,a+笛一a=0

8.一個(gè)n位字長(zhǎng)的二進(jìn)制定點(diǎn)整數(shù),其中1位為符號(hào)位,分別寫出在補(bǔ)碼和反碼兩

種情況下:

(1)模數(shù);(2)最大的正數(shù);

(3)最負(fù)的數(shù);(4)符號(hào)位的權(quán);

(5)-1的表示形式;(6)0的表示形式。

解:

項(xiàng)目補(bǔ)碼反碼

模數(shù)Mod2"Mod(2--1)

最大的正數(shù)2**-12*7-1

最負(fù)的數(shù)—2-1-(2**-1)

符號(hào)位的權(quán)2-1AM1

-1的裹示形式1111111111111110

00000000

0的裊示形式00000000

11111111

9.某機(jī)字長(zhǎng)16位,問在下列幾種情況下所能表示數(shù)值的范圍:

(1)無符號(hào)整數(shù);(2)用原碼表示定點(diǎn)小數(shù);

<3)用補(bǔ)碼表示定點(diǎn)小數(shù);(4)用原碼表示定點(diǎn)整數(shù):

(5)用補(bǔ)碼表示定點(diǎn)整數(shù)。

解:(1)O<X<(216-1)

(2)-(l-2-15XX<(l-2-15)

(3)-KX?l-2-15)

(4)-(215-1)<X<(215-1)

(5)-2,5<X<(2,5-1)

10.某機(jī)字長(zhǎng)32位,試分別寫出無符號(hào)整數(shù)和帶符號(hào)整數(shù)(補(bǔ)碼)的表示范圍(用十

進(jìn)制數(shù)表示)。

解:無符號(hào)整數(shù):0&'&(2婪-l)o

補(bǔ)碼:一2”《刀《(2”-1)。

11.某浮點(diǎn)數(shù)字長(zhǎng)12位,其中階符1位,階碼數(shù)值3位,數(shù)符1位,尾數(shù)數(shù)值7位,階碼以2為

底,階碼和尾數(shù)均用補(bǔ)碼表示。它所能表示的最大正數(shù)是多少?最小規(guī)格化正數(shù)是多少?絕對(duì)值最大的

負(fù)數(shù)是多少?

解:最大正數(shù)=(1-2T)X二T=(1-2-7)X2'=127。

最小規(guī)格化正數(shù)=2一】義2-=2TX2T=2-9=+.

7

絕對(duì)值最大的負(fù)數(shù)=一lx/'=-1X2=-1286

12.某浮點(diǎn)數(shù)字長(zhǎng)16位,其中階碼部分6位(含1位階符),移碼表示,以2為底;尾

數(shù)部分10位(含1位數(shù)符,位于尾數(shù)最高位),補(bǔ)碼表示,規(guī)格化。分別寫出下列各題的二

進(jìn)制代碼與十進(jìn)制真值。

(1)非零最小正數(shù);

(2)最大正數(shù);

(3)絕對(duì)值最小負(fù)數(shù);

(4)絕對(duì)值最大負(fù)數(shù)。

_J-H

解:(1)非零最小正數(shù);000000,0,100000000;2TX2=2o

(2)最大正數(shù):lllUl,0」UUUU:(l-2T)X2?T=(l-2-9)X2s,

(3)絕對(duì)值最小負(fù)數(shù):000000,1,011111111;-(2-1+2-*)X2-#。

(4)絕對(duì)值最大負(fù)數(shù),000000000=-2”。

13.一浮點(diǎn)數(shù),其階碼部分為p位,尾數(shù)部分為q位,各包含1位符號(hào)位,均用補(bǔ)碼表

示;尾數(shù)基數(shù)r=2,該浮點(diǎn)數(shù)格式所能表示數(shù)的上限、下限及非零的最小正數(shù)是多少?寫

數(shù)據(jù)的機(jī)器層次表示出表達(dá)式。

解:上限(最大正數(shù)1>-\

下限(絕對(duì)值最大負(fù)數(shù))=-1X22"”一,

最小1E數(shù)=2,T>X2T”,

最小規(guī)格化正數(shù)=27X2-1'二

14.若上題尾數(shù)基數(shù)r=16,按上述要求寫出表達(dá)式。

解:上限(最大正數(shù))=(1-2-“f)X16?“"一,

下限(絕對(duì)值最大負(fù)數(shù))=一義0-1

116"'o

最小正數(shù)=2,T>XI6T'

最小規(guī)格化正數(shù)=16一|X16-"“0

15.某浮點(diǎn)數(shù)字長(zhǎng)32位,格式如下。其中階碼部分8位,以2為底,移碼表示;尾數(shù)部分一共2

4位(含1位數(shù)符),補(bǔ)碼表示?,F(xiàn)有一浮點(diǎn)代碼為(8C5A3E00)16,試寫出它所表示的十

進(jìn)制真值。

07893

階碼數(shù)符尾數(shù)

解:(8C5A3E00)i6=10001100010110100011111000000000B.

:

0.i0110100011111X2-=(101101000111.11)2=(2887.75>oo

16.試將(一0.1101)2用IEEE短浮點(diǎn)數(shù)格式表示出來。

解:0.1101=1.101X2-1

符號(hào)位=1。

階碼=127—1=126。

1,01111110.10100000000000000000000o

結(jié)果=BF500000H。

17.將下列十進(jìn)制數(shù)轉(zhuǎn)換為IEEE短浮點(diǎn)數(shù):

解:(1)28.75=11100.11=1.110011X24.

符號(hào)位=0。

階碼=127+4=131。

0,10000011,11001100000000000000000o

結(jié)果=41E60000H。

9

(2)624=1001110000=1.001110000X2O

符號(hào)位=0。

階碼=127+9=136。

0,10001000,00111000000000000000000o

結(jié)果=441C0000H。

-

(3)-0.625=-0.101=—1.01X2'o

符號(hào)位=1。

階碼=127—1=126。

1,01111110,01000000000000000000000o

結(jié)果=BF200000H。

(4)+0.0。

結(jié)果=00000000H。

9

(5)-1000.5=1111101000.1=1.iill010001X2o

符號(hào)位=1。

階碼=127+9=136。

1,10001000,111101000100000000000003

結(jié)果=C47A2000H。

18.將下列IEEE短浮點(diǎn)數(shù)轉(zhuǎn)換為十進(jìn)制數(shù):

(1)11000000111100000000000000000000;

(2)001111100000000000000000000000;

(3)0100001100110010000000000000000;

(4)01000000000000000000000000000000;

(5)01000001001000000000000000000000;

(6)00000000000000000000000000000000o

解:(1)1,10000001.11100000000000000000000

符號(hào)位=1。

階碼=129—127=2。

2

1.111X2=1H.1B=7.5O

所以結(jié)果=一7.5。

(2)0,01111110,00100000000000000000000

符號(hào)位=0。

階碼=126—127=-1°

1.001X2-1=0.1001B=0.5625。

所以,結(jié)果=0.5625。

(3)0.10000111.00110010000000000000000

符號(hào)位=0。

階碼=135—127=8。

8

1.0011001X2=100110010B=306o

所以,結(jié)果=306。

(4)0.10000000,00000000000000000000000

符號(hào)位=0。

階碼=128—127=1°

1

1.0X2=10B=2o

所以,結(jié)果=2。

(5)040000010,01000000000000000000000

符號(hào)位=0。

階碼=130—127=3。

3

1.01X2=1010B=10o

所以,結(jié)果=10。

(6)0,00000000,00000000000000000000000

階碼和尾數(shù)都等于全0,結(jié)果=0。

19.對(duì)下列ASCH碼進(jìn)行譯碼:

1001001,0100001,1100001,1110111

1000101,1010000,1010111,0100100

解:以上ASCII碼分別為I,!,a,w,E,P,W,$0

20.以下列形式表示(5382)10。

(1)8421碼;(2)余3碼;

(3)2421碼:(4)二進(jìn)制數(shù)。

解:(1)0101001110000010,

(2)1000011010110101。

(3)1011001111100010。

(4)1010100000110o

21.填寫下列代碼的奇偶校驗(yàn)位,現(xiàn)設(shè)為奇校驗(yàn):

10100001

00011001

01001110

解:3個(gè)代碼的校驗(yàn)位分別是0,0,1。

22.已知下面數(shù)據(jù)塊約定:橫向校驗(yàn)、縱向校驗(yàn)均為奇校驗(yàn),請(qǐng)指出至少有多少位出錯(cuò)。

aa,a便aaaa校驗(yàn)位

10011011-0

00110101-1

11010000-0

11100000-0

01001111-*0

1

1111VV1

校驗(yàn)位10101111

解:經(jīng)檢測(cè)的和3列出錯(cuò).所以至少有兩位出錯(cuò)。

?.求有效信息位為01101110的海明校驗(yàn)碼。

解:P5D8D7D6D5P4D4D3D2R3DIP2P1

Pi=Dl十D2十D4十D5十D7=0十1十1十0十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)碼=1011001111001:

24.設(shè)計(jì)算機(jī)準(zhǔn)備傳送的信息是:1010110010001111,生成多項(xiàng)式是X5+X2+

1,計(jì)算校驗(yàn)位,寫出CRC碼。

52

解:生成多項(xiàng)式X+X+l=1001010

首先將準(zhǔn)備傳送的信息左移5位:101011001000111100000o

然后101011001000111100000100101,余數(shù)=10011。

所以,CRC碼=101011001000111110011。

第三章

1.指令長(zhǎng)度和機(jī)器字長(zhǎng)有什么關(guān)系?半字長(zhǎng)指令、單字長(zhǎng)指令、雙字長(zhǎng)指令分別表示什么意思?

解:指令長(zhǎng)度與機(jī)器字長(zhǎng)沒有固定的關(guān)系,指令長(zhǎng)度可以等于機(jī)器字長(zhǎng),也可以大于或小于機(jī)器字長(zhǎng)。

通常,把指令長(zhǎng)度等于機(jī)器字長(zhǎng)的指令稱為單字長(zhǎng)指令;指令長(zhǎng)度等于半個(gè)機(jī)器字長(zhǎng)的指令稱為半字長(zhǎng)指

令:指令長(zhǎng)度等于兩個(gè)機(jī)器字長(zhǎng)的指令稱為雙字長(zhǎng)指令。

2.零地址指令的操作數(shù)來自哪里?一地址指令中,另一個(gè)操作數(shù)的地址通??刹捎檬裁磳ぶ贩绞将@得?

各舉一例說明。

解:雙操作數(shù)的零地址指令的操作數(shù)來自堆棧的棧頂和次棧頂。雙操作數(shù)的一地址指令的另一個(gè)操作

數(shù)通常可采用隱含尋址方式獲得,即將另一操作數(shù)預(yù)先存放在累加器中。例如,前述零地址和一地址的加

法指令。

3.某機(jī)為定長(zhǎng)指令字結(jié)構(gòu),指令長(zhǎng)度16位;每個(gè)操作數(shù)的地址碼長(zhǎng)6位,指令分為無操作數(shù)、單操

作數(shù)和雙操作數(shù)三類。若雙操作數(shù)指令已有K種,無操作數(shù)指令已有L種,問單操作數(shù)指令最多可能有多少

種?上述三類指令各自允許的最大指令條數(shù)是多少?

解:X=(2*—K)X2*一步k

4

雙操作數(shù)指令的最大指令數(shù):2-lo

單操作數(shù)指令的最大指令數(shù)(假設(shè)雙操作數(shù)指令僅1條,為無操作數(shù)指

令留出1個(gè)擴(kuò)展窗口

無操作數(shù)指令的最大指令數(shù):216-212-2s。其中2U為表示某條二地址指令占用的

編碼數(shù)e為表示某條單地址指令占用的編碼數(shù)。此時(shí)雙操作數(shù)和單操作數(shù)指令各僅有

1條。

4.設(shè)某機(jī)為定長(zhǎng)指令字結(jié)構(gòu),指令長(zhǎng)度12位,每個(gè)地址碼占3位,試提出一種分配

方案,使該指令系統(tǒng)包含:4條三地址指令,8條二地址指令,180條單地址指令。

解:4條三地址指令

OOOXXXYYYZZZ

OilXXXYYYZZZ

8條二地址指令

1OOOOOXXXYYY

1OO111XXXYYY

ISO條單地址指令

1O1OOOOOOXXX

111IIO011XXX

5.指令格式同上題,能否構(gòu)成:三地址指令4條,單地址指令255條,零地址指令64條?為什

么?

解:三地址指令4條

000XXXYYYZZZ

OilXXXYYYZZZ

單地址指令255條

100000000XXX

ill111110YYY

只能再擴(kuò)展出零地址指令8條.所以不能構(gòu)成這樣的指令系統(tǒng)。

6.指令中地址碼的位數(shù)與直接訪問的主存容量和最小尋址單位有什么關(guān)系?

解:主存容量越大,所需的地址碼位數(shù)就越長(zhǎng)。對(duì)于相同容量來說,最小尋址單位越小,地址碼的位

數(shù)就越長(zhǎng)。

7.試比較間接尋址和寄存器間址。

解:間接尋址方式的有效地址在主存中,操作數(shù)也在主存中:寄存器間址方式的有效地址在寄存器中,

操作數(shù)在主存中。所以間接尋址比較慢.

8.試比較基址尋址和變址尋址。

解:基址尋址和變址尋址在形成有效地址時(shí)所用的算法是相同的,但是它們兩者實(shí)際上是有區(qū)別的。

一般來說,變址尋址中變址寄存器提供修改量(可變的),而指令中提供基準(zhǔn)值(固定的);基址尋址

中基址寄存器提供基準(zhǔn)值(固定的),而指令中提供位移量(可變的)o這兩種尋址方式應(yīng)用的場(chǎng)合也

不同,變址尋址是面向用戶的,用于訪問字符串、向量和數(shù)組等成批數(shù)據(jù);而基址尋址面向系統(tǒng),主要用

于邏輯地址和物理地址的變換,用以解決程序在主存中的再定位和擴(kuò)大尋址空間等問題。在某些大型機(jī)中,

基址寄存器只能由特權(quán)指令來管理,用戶指令無權(quán)操作和修改。

9.某機(jī)字長(zhǎng)為16位,主存容量為64K字,采用單字長(zhǎng)單地址指令,共有50條指令。若有直接尋

址、間接尋址、變址尋址、相對(duì)尋址四種尋址方式,試設(shè)計(jì)其指令格式。

解:操作碼6位,尋址方式2位,地址碼8位。

10.某機(jī)字長(zhǎng)為16位,主存容量為64K字,指令格式為單字長(zhǎng)單地址,共有64條指令。試說明:

(1)若只采用直接尋址方式,指令能訪問多少主存單元?

(2)為擴(kuò)充指令的尋址范圍,可采用直接/間接尋址方式,若只增加一位直接/間接標(biāo)志,指令可尋址

范圍為多少?指令直接尋址的范圍為多少?

(3)采用頁面尋址方式,若只增加一位Z/C(零頁/現(xiàn)行頁)標(biāo)志,指令尋址范圍為多少?指令直接

尋址范圍為多少?

(4)采用(2)、(3)兩種方式結(jié)合,指令的尋址范圍為多少?指令直接尋址范圍為多少?

解:因?yàn)橛?jì)算機(jī)中共有64條指令,所以操作碼占6位,其余部分為地址碼或標(biāo)志位。

(1)若只采用直接尋址方式,地址碼部分為10位.指令能訪問的主存單元數(shù)為2,:=

1K字。

(2)若采用直接/間接尋址方式,將增加f位直接/間接標(biāo)志,地址碼部分為9位,

指令直接尋址的范圍為"=0.5K字,指令可尋址范圍為整1、主存*間/=64K字。

(3)若采用頁面尋址方式,將增加一位Z/C(零頁/現(xiàn)行頁)標(biāo)志,所以指令直接尋址

范圍仍為29=0.5K字,指令尋址范圍仍為216=64K字。

(4)此時(shí)將需要@和Z/C兩個(gè)標(biāo)志位,所以指令直接尋址范圍為2#=0.25K字,指

令的可尋址范圍仍為216=64K字。

11.設(shè)某機(jī)字長(zhǎng)32位,CPU有32個(gè)32位的通用寄存器,設(shè)計(jì)一個(gè)能容納64種操作的單字長(zhǎng)

指令系統(tǒng)。

(1)如果是存儲(chǔ)器間接尋址方式的寄存器一存儲(chǔ)器型指令,能直接尋址的最大主存空間是多少?

(2)如果采用通用寄存器作為基址寄存器,能直接尋址的最大主存空間又是多少?

解:因?yàn)橛?jì)算機(jī)中共有64條指令,所以操作碼占6位:32個(gè)通用寄存器,寄存器編號(hào)占5位;

其余部分為地址碼或標(biāo)志位。

(1)如果是存儲(chǔ)器間接尋址方式的寄存器一存儲(chǔ)器型指令,操作碼6位,寄存器編號(hào)5位,間址標(biāo)

志1位,地址碼20位,直接尋址的最大主存空間是片°,字。

(2)如果采用通用寄存器作為基址寄存器,EA=(R,)-A,能直接尋址的最大主存空間是2"字。

12.已知某小型機(jī)字長(zhǎng)為16位,其雙操作數(shù)指令的格式如下:

0567815

OPRA

其中:0P為操作碼,R為通用寄存器地址。試說明下列各種情況下能訪問的最大主存區(qū)域有多少機(jī)器字?

(1)A為立即數(shù)。

(2)A為直接主存單元地址。

(3)A為間接地址(非多重間址).

(4)A為變址尋址的形式地址,假定變址寄存器為R1(字長(zhǎng)為16位)。

解:(1)1個(gè)機(jī)器字。

(2)256個(gè)機(jī)器字。

(3)65536個(gè)機(jī)器字。

(4)65536個(gè)機(jī)器字.

13.計(jì)算下列4條指令的有效地址(指令長(zhǎng)度為16位)。

(1)0000000(2)1000000(3)1707100(4)0123050

假定:上述4條指令均用八進(jìn)制書寫,指令的最左邊是一位間址指示位@(@=0,直

接尋址@=1,間接尋址),且具有多重間訪功能;指令的最右邊兩位為形式地址;主存容

量215單元,表3-4為有關(guān)主存單元的內(nèi)容(八進(jìn)制)。

表X習(xí)題13的表格解:(1)OOOOOOQ

地址內(nèi)行因?yàn)橹噶畹淖罡呶粸?,故為直接尋址.匕\=

00000100002A=OOOOOQ0

00001046710(2)100000Q

00002054304因?yàn)橹噶畹淖罡呶粸?.故指令為間接尋址,

00003100000(00000)=100002.最高位仍為1,繼續(xù)間接尋址,

00004102543(00002)=054304,其最高位為0,表示已找到有效

00005100001地址.EA=54304Q0

00006063215(3)170710Q

00007077710因?yàn)橹噶畹淖罡呶粸長(zhǎng)故指令為間接尋址,

00010100005(00010)=100005.最高位仍為1,繼續(xù)間接尋址,

(00005)=100001,最高位仍為1.繼續(xù)間接尋址。

(00001)=046710,其最高位為0,表示已找到有效地址,EA=46710Q。

(4)012305Q

因?yàn)橹噶畹淖罡呶粸?,故為直接尋址,EA=A=00005Qo

14.假定某機(jī)的指令格式如下:

1110987650

OPIILz/cA

其中:

:|HJJ£中址;

Bit8=1:變址寄存器11尋址;

Bit7=l:變址寄存器L尋址;

Bit6(零頁/現(xiàn)行頁尋址):Z/C=0,表示0頁面:

Z/C=l,表示現(xiàn)行頁面,即指令所在頁面。

若主存容量為2'2個(gè)存儲(chǔ)單元,分為26個(gè)頁面,每個(gè)頁面有2°個(gè)字。

設(shè)有關(guān)寄存器的內(nèi)容為

(PC)=0340Q(Ii)=1111Q(Is)=0256Q

試計(jì)算下列指令的有效地址。

C1)1046Q

(2)2433Q

(3)3215Q

(4)1111Q

解:(J.)1046Q=001000100110

IM為4個(gè)歷志均為0,故為F討爰己-址.EAA^0046Q。

(2)2433Q=010100OilOil

因?yàn)锽it8(L)=1.故為變址寄存器1尋址,EA=(L)+A=lllH-33=1144Q,

(3)3215Q=011010001101

因?yàn)锽it7(I2)=1,故為變址寄存器2尋址,EA=S)+A=0256+I5=0273Q。

<4>illlQ=001001001001

因?yàn)锽it6(Z/C>=1.故為當(dāng)前貢尋址.EA=(PC〉H〃A=O3〃11=O31,Q。

15.假定指令格式如下:

151211109870

OPIiz/cD/IA

其中:D/I為直接/間接尋址標(biāo)志.D/I=O表示直接尋址.D/I=l表示間接尋址。其

余標(biāo)志位同題14說明。

若主存容量為*個(gè)存儲(chǔ)單元,分為筌個(gè)頁面,每個(gè)頁面有2s個(gè)字。

設(shè)有關(guān)寄存器的內(nèi)容為

(h)=002543Q(L)=O632JL5Q(PC)=004350Q

試計(jì)算下列指令的有效地址。

(1)152301Q

(2)074013Q

(3)161123Q

(4)140011Q

解:(1)152301Q=l101010011000001

因?yàn)锽iilO(L)=i,故為變址寄存器2尋址,EA=(L)+A=063215+

301=063516Q。

(2)074013Q=0111100000001011

因?yàn)锽iill(L)=l.故為變址寄存器1尋址,EA=(h>+A=002543+

013=002556Qo

(3)161123Q=1110001001010011

因?yàn)锽it9(Z/C)=l.故為當(dāng)前頁g■址,EA=(PC)〃A=OO4I23Q。

(4)140011Q=l100000000001001

因?yàn)?個(gè)標(biāo)志位均為0?故為直接寸址,EA=A—OOOOllQa

16.舉例說明哪幾種尋址方式除去取指令以外不訪問存儲(chǔ)器?哪幾種尋址方式除去取指令外只需訪問

一次存儲(chǔ)器?完成什么樣的指令,包括取指令在內(nèi)共訪問4次存儲(chǔ)器?

解:除去取指令以外不訪問存儲(chǔ)器:立即尋址,寄存器尋址。

除去取指令外只需訪問一次存儲(chǔ)器:直接尋址,寄存器間接尋址,變址尋址,基址尋址,相對(duì)尋址,頁面

尋址。

二級(jí)間接尋址包括取指令在內(nèi)共訪問4次存儲(chǔ)器。

17.設(shè)相對(duì)尋址的轉(zhuǎn)移指令占兩個(gè)字節(jié),第一個(gè)字節(jié)是操作碼,第二個(gè)字節(jié)是相對(duì)位移量,用補(bǔ)碼表示。

假設(shè)當(dāng)前轉(zhuǎn)移指令第一字節(jié)所在的地址為2000H,且CPU每取一個(gè)字節(jié)便自動(dòng)完成(PC)+1-PC的

操作。試問當(dāng)執(zhí)行JMP*+8和JMP*-9指令(倡為相對(duì)尋址特征)時(shí),轉(zhuǎn)移指令第二字節(jié)的內(nèi)容各

為多少?轉(zhuǎn)移的目的地址各是什么?

解:轉(zhuǎn)移指令第二字節(jié)的內(nèi)容分別為:00001000(+8),11110111(-9)

轉(zhuǎn)移的目的地址分別為:200AH,1FF9H.

20.什么叫主程序和子程序?調(diào)用子程序時(shí)還可采用哪幾種方法保存返回地址?畫圖說明調(diào)用子程序的

過程。

解:主程序就是指通常的程序,而子程序是一組可以公用的指令序列,只要知道子程序的入口地址就

能調(diào)用它。

保存返回地址的方法有多種:

(1)用子程序的第一個(gè)字單元存放返回地址。轉(zhuǎn)子指令把返回地址存放在子程序的第一個(gè)字單元中,子

程序從第二個(gè)字單元開始執(zhí)行。返回時(shí)將第一個(gè)字單元地址作為間接地址,采用間址方式返回主程序。

(2)用寄存器存放返回地址。轉(zhuǎn)子指令先把返回地址放到某一個(gè)寄存器中,再由子程序?qū)⒓拇嫫髦械膬?nèi)

容轉(zhuǎn)移到另一個(gè)安全的地方。

(3)用堆棧保存返回地址。

調(diào)用子程序的過程如圖3唱8所示,此時(shí)返回地址保存在堆棧中。

壬程序子程序

圖3-8主程序調(diào)用于程序的過程

21.在某些計(jì)算機(jī)中,調(diào)用子程序的方法是這樣實(shí)現(xiàn)的:轉(zhuǎn)子指令將返回地址存入子程序的第一個(gè)字單元,

然后從第二個(gè)字單元開始執(zhí)行子程序,請(qǐng)回答下列問題:

(1)為這種方法設(shè)計(jì)一條從子程序轉(zhuǎn)到主程序的返回指令。

(2)在這種情況下,怎么在主、子程序間進(jìn)行參數(shù)的傳遞?

(3)上述方法是否可用于子程序的嵌套?

(4)上述方法是否可用于子程序的遞歸(即某個(gè)子程序自己調(diào)用自己)?

(5)如果改用堆棧方法,是否可實(shí)現(xiàn)(4)所提出的問題?

解:(1)返回指令通常為零地址指令。返回地址保存在堆棧中,執(zhí)行返回指令時(shí)自動(dòng)從堆棧中彈出。

而目前返回地址是保存在子程序的第一個(gè)單元中,故此時(shí)返回指令不能再是零地址指令了,而應(yīng)當(dāng)是一地

址指令"如:

JMP?子程序首地址

間接尋址可找到返回地址,然后無條件轉(zhuǎn)移到返回的位置。

(2)在這種情況下,可利用寄存器或主存單元進(jìn)行主、子程序間的參數(shù)傳遞.

(3)可以用于子程序的嵌套(多重轉(zhuǎn)子)。因?yàn)槊總€(gè)返回地址都放在調(diào)用的子程序的第一個(gè)單元中。

(4)不可以用于子程序的遞歸,因?yàn)楫?dāng)某個(gè)子程序自己調(diào)用自己時(shí),子程序第一個(gè)單元的內(nèi)容將被破壞。

(5)如果改用堆棧方法,可以實(shí)現(xiàn)子程序的遞歸,因堆棧具有后進(jìn)先出的功能。

第四章

1.證明在全加器里,進(jìn)位傳遞函數(shù)0=丸—8=4十8,。

解:并行加法器中的每一個(gè)全加器都有一個(gè)從低位送來的進(jìn)位和一個(gè)傳送給較高位的進(jìn)位。進(jìn)位表達(dá)

式為匚=.4,B,+(4,十3,)C-】欲證明P=4,+B=A,十B,也就是要證明

C=.4,*+(A,@>8,)CT=/L8,+(A+8)CT

用卡諾圖法,圖4-10(a)和4-10(b)分別是兩個(gè)邏輯表達(dá)式的卡諾圖。兩個(gè)卡諾圖相同,兩個(gè)邏

輯表達(dá)式就相等,則進(jìn)位傳遞函數(shù)的兩種形式相等。

2.某加法器采用組內(nèi)并行、組間并行的進(jìn)位鏈,4位一組,寫出進(jìn)位信號(hào)C6的邏輯表達(dá)式。

解:最低一組的進(jìn)位輸出C=G;+廳a

其中:G;=G+RG+Rna+RAAG

P=RPaeB

G=Go-PbCi

所以C=G+AG=G+AG+A用C

3.設(shè)計(jì)一個(gè)9位先行進(jìn)位加法器,每3位為一組,采用兩級(jí)先行進(jìn)位線路,、

G=G+PG

解:G=G+8G+AAa

a=a+Ra+AAG+RAHG

設(shè):G:=&+AG+RP:Gi,K=PsRR

a=G;+8a

則有:

C=&+P:G:+百RG

Q=G+K&+百EG'+KPIKa

9位先行進(jìn)位加法器如圖4-11所示。

4.已知X和Y,試用它們的變形補(bǔ)碼計(jì)算出X+Y,并指出結(jié)果是否溢出。

(1)X0.11011011111

(2)0.1011,Y=-0.10101

(3)X010110,Y000001

(4)X0010.

C=4如/,+&)%

4

T0□□

0□□

圖4-10全加器的K諾圖

解:(1)Ex3b=o.lion,EF]H=O.inn

00.11011

00.11111”卜

m..nolo[x+yjn結(jié)果正溢

(2)LA->=O.non,Lr>=i-oioii

00.110111X、

+11.01。1UN

QQ.ooiio[x+yM

x+y=o.oono

(3)Lx>=i.01010,Lr>=i.mu

11.oioio[外

+11-iiu[小

11.oiooi[x+y]卜

x+y=—o.ioiii

(4)LX>=1.00101,Cy>=0.11110

11.00101[xM

—oo」iiiom

QQ.oooii[x+小

x+y=o.oooii

5.已知X和Y,試用它們的變形補(bǔ)碼計(jì)算出X-Y,并指出結(jié)果是否溢出。

(1)X=0.11011,Y=-0.11111

(2)X=0.10111,Y=0.11011

(3)X=0.11011,Y=-0.10011

(4)X=-0.10110,Y=-0.00001

解:(1)[X、=0.11011,UJ"=1.00001.[一辦=0」1111

00.11011[XK

十oo」1111[—yN

m.iioio[x—y屈結(jié)果正溢

(2)=0.10111,Cy>=o.noil,r—r>=i-ooioi

00.10111匚

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論