計算機組成原理講義_第1頁
計算機組成原理講義_第2頁
計算機組成原理講義_第3頁
計算機組成原理講義_第4頁
計算機組成原理講義_第5頁
已閱讀5頁,還剩16頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

研究生入學考試計算機科學與技術

計算機組成原理考研沖刺班輔導講義

0、前言

【考試要求】

1、計算機組成原理課程在整個計算機專業課考試中所占分值比重:45分:150分;

2、45分=11x2分+23分;

3、題號:12~22,43,44o

【重要意義】

1、計算機組成原理是計算機三大基礎課之-一;

2、計算機組成原理介紹硬件結構,但是處于軟件硬件之間的課程;

【真題特點】

1、基礎性很強

2、綜合性很強

3、注重理解

4、注意新知識

【復習方法】

1、依托經典教材:白中英版;

2、掌握整機結構的概念,以馮諾依曼原理為核心思想,融會貫通;

3、反復演練歷年考研真題,以點帶面,全面復習:

4、復習要全面,尤其是較為前沿的知識點;

5、復習要重點突出,尤其注意各章節之間的銜接和綜合。

【先修課程】

數字邏輯

【后續課程】

計算機體系結構

【相關課程】

單片機、微機原理、匯編語言

【整機結構概念】

【馮諾依曼原理】

存儲程序控制

【基本思想】

1、性能均衡思想;

2、二進制思想;

3、機器實現思想;

4、軟硬件邏輯等價性思想。

【基本技能】

1、進制轉換;

2、補碼運算。

一、計算機系統概述

【大綱要求】

(-)計算機發展歷程

(二)計算機系統層次結構

1.計算機硬件的基本組成

2.計算機軟件的分類

3.計算機的工作過程

(三)計算機性能指標

吞吐量、響應時間;CPU時鐘周期、主頻、CPLCPU執行時間;MIPS、FLOPSo

【三年所占分值】

2009年:2分;2010年:0分:2011年:2分

【歷年考研真題及參考答案】

2009年

11.馮諾依曼計算機中指令和數據均以二進制形式存放在存儲器中,CPU區分它們的依據是

(C)

A.指令操作碼的譯碼結果

B.指令和數據的尋址方式

C.指令周期的不同階段

D.指令和數據所在的存儲單元

2010年

2011年

12.下列選項中,描述浮點數操作速度指標的是

A.MIPSB.CPI

C.IPCD.MFLOPS

參考答案:D。

【解析】:基本概念,送分題。

二、數據的表示和運算

【大綱要求】

(一)數制與編碼

1.進位計數制及其相互轉換

2.真值和機器數

3.BCD碼

4.字符與字符串

5.校驗碼

(二)定點數的表示和運算

1.定點數的表示

無符號數的表示;有符號數的表示.

2.定點數的運算

定點數的位移運算;原碼定點數的加/減運算;補碼定點數的加/減運算;定點數的

乘/除運算;溢出概念和判別方法。

(三)浮點數的表示和運算

1.浮點數的表示

濘點數的表示范圉,IEEE754標準

2.浮點數的加/減運算

(四)算術邏輯單元ALU

1.串行加法器和并行加法器

2.算術邏輯單元ALU的功能和機構

【三年所占分值】

2009年:4分;2010年:4分;2011年:13分

【歷年考研真題及參考答案】

2009年

12.一個C語言程序在一臺32位機器上運行。程序中定義了三個變量x、y和z,其中x和

z為int型,y為short型。當x=127,y=-9時,執行賦值語句z=x+y后,x,y和z的值分別是

(D)

A.x=0000007FH,y=FFF9H,z=00000076H

B.x=0000007FH,y=FFF9H,z=FFFF0076H

C.x=0000007FH,y=FFF7H,z=FFFF0076H

D.x=0000007FH,y=FFF7H,z=00000076H

13.浮點數加、減運算過程一般包括對階、尾數運算、規格化、舍入和判溢出等步驟。設浮

點數的階碼和尾數均采用補碼表示,且位數分別為5位和7位(均含2位符號位)。若有兩

個數X=27*29/32,Y=25*5/8,則用浮點加法計算X+Y的最終結果是(D)

A.001111100010B.001110100010

C.010000010001D.發生溢出

2010

13、假定有4個整數用8位補碼分別表示rl=FEH,r2=F2H,r3=90H,r4=F8H,若將運算結果存

放在一個8位的寄存器中,則下列運算會發生溢出的是(B)

A:rlxr2B:r2xr3

C:rlxr4D:r2xr4

解析:rl=-2

r2=-14

r3=-112

r4=-8

14.假定變量i,f,d數據類型分別為int,float和double

(int用補碼表示,float和double分別用IEEE754單精度和雙精度浮點數據格式表示),已

知i=785,41.5678e3,d=L5el00.若在32位機器中執行下列關系表達式,則結果為真是(B)

(I)i=(int)(float)i(II)f=(float)(int)f(III)f==(float)(double)f(IV)(d+f)-d=f

A.僅I和IIB.僅1和IIIC.僅II和HID.僅III和IV

參考答案:b

解析:IEEE單精度格式具有24位有效數字,并總共占用32位。IEEE雙精度格式具有53

位有效數字精度,并總共占用64位。

基本浮點格式是固定格式,相對應的十進制有效數字分別為7位和17位。基本

浮點格式對應的C/C++類型為float和doubleo

單精度格式

IEEE單精度浮點格式共32位,包含三個構成字段:23位小數f,8位偏置指數e,1位

符號s。將這些字段連續存放在一個32位字里,并對其進行編碼。其中0:22位包含23位的

小數f;23:30位包含8位指數e;第31位包含符號s。如圖所示。

se[30:20]f[22:0]

313023220

一般地,32位字的第0位存放小數f的最低有效位LSB(theleastsignificantbit),第22位

存放小數f的最高有效位MSB(themostsignificantbit);第23位存放偏置指數的最低有效

位LSB,第30位存放偏置指數的最高有效位MSB;最高位,第31位存放符號s。

雙精度格式

IEEE雙精度浮點格式共64位,占2個連續32位字,包含三個構成字段:52位的小數f,

11位的偏置指數e,1位的符號位s。將這2個連續的32位字整體作為一個64位的字,進

行重新編號。其中0:51位包含52位的小數f:52:62位包含11位的偏置指數e;而最高

位,第63位包含符號位s。如圖所示。

e[52:62]f[51:32]

s

伸62575132

IffRIfTII

3in

2011年

13.float型數據通常用IEEE754單精度浮點數格式表示。若編譯器將float型變量x分配在

一個32位浮點寄存器FR1中,且x=8.25,則FR1的內容是

A.C1040000HB.C2420000H

C.C1840000HD.C1C20000H

參考答案:Ao

【解析】:

x=-8.25=(-1000.01)2=(-1.00001X211)2

e移=E=e+127=130=(10000010)2,

單精度浮點數格式:1位數符,8位階碼(含階符),23位尾數

故FR1內容為:11000001000001000000000000000000

即11000001000001000000000000000000,BPCI040000H

43.(11分)假定在一個8位字長的計算機中運行如下類C程序段:

unsignedintx=134;

unsignedinty=246;

intm=x;

intn=y;

unsignedintz1=x-y;

unsignedintz2=x+y;

intkl=m-n;

intk2=m+n;

若編譯器編譯時將8個8位寄存器R1?R8分別分配給變量x、y、m、n、zl、z2、kl

和k2。請回答下列問題(提示:帶符號整數用補碼表示)

(1)執行上述程序段后,寄存器RI、R5和R6的內容分別是什么?(用十六進制表示)

(2)執行上述程序段后,變量m和kl的值分別是多少?(用十進制表示)

(3)上述程序段涉及帶符號整數加/減、無符號整數加/減運算,這四種能否利用同一個加

法器及輔助電路實現?簡述理由。

(4)計算機內部如何判斷帶符號整數加/減運算的結果是否發生溢出?上述程序段中,哪些

帶符號整數運算語句的執行結果會發生溢出?

解答:

本題考查無符號數和帶符號數的溢出概念,以及C語言中強制類型轉換操作對數據的處理

方式。

注意:

無符號數沒有溢出的概念,超出最大值的進位將被丟棄。

C語言規定在無符號整數和帶符號整數之間進行強制類型轉換時,機器碼并不改變,改變的

是對機器碼的解釋方式。

(1)各寄存器和變量的對應關系如下表所示。

寄R1R2R3R4R5R6R7R8

變XymnZ1z2klk2

性無符無符號帶符號帶符號無符號無符號帶符號帶符號

質號補碼補碼補碼補碼

Rl=x=134=l0000110b=86h

Y=246=11110110b

R5=zl=x-y=134-246=10000110b-l1110110b

=10000110b+00001010b=10010000b=90h

R6=z2=x+y=134+246=10000110b+l1110110b

=(l)01111100b=7ch

(2)

m補=x=10000110b,m=-1111010b=-7ah=-122

n-i?['=y=l1110110b>n=-0001010b=-10

kl#=m^b-n#=1000011Ob-1111011Ob

=10000110b+00001010b=10010000b,

kl=-1110000b=-70h=-112

(3)

無符號數和帶符號數在機器中都是以二進制數的形式存儲的,不同之處在于帶符號數是將

二進制值看作補碼形式,將其轉換為真值時最高位看作符號位。補碼運算時,符號位可以和

數值位等同看待,故無符號數加減運算與帶符號數加減運算完全可以用同一套電路實現。

因為x補減y補可以轉化為x補力口(-y)補的運算,故補碼形式的運算中,加減法可以

用同一套電路實現,只需增加從y補求(-y)補的電路即可。

無符號數可以看作正數參加運算,也可以用同一套電路實現。只是不進行溢出判斷。

故四種運算可以利用同一個加法器及輔助電路實現。

(4)帶符號整數加/減運算的溢出判斷方法有兩種:

1.如果最高位的進位和符號位的進位不同,則溢出;

2.雙符號位法:在補碼的單符號位之外再增加一個符號位,從而將數據的可表示范圍擴大

一倍,當運算結果的高符號位與低符號位不相同時,說明最高位的進位修改了低符號位,可

判斷為溢出

因k2=m4-n=10000110b+11110110b=(l)01111100(MHi),故語句“intk2=m+n”的執行結果溢

出。

【試題示例】

2、假定一個十進制數為-66,按補碼形式存放在一個8位寄存器中,該寄存器的內容用十

六進制表示為(B)

A.C2HB.BEHC.BDHD.42H

【模擬題】

三、存儲器層次結構

【大綱要求】

(-)存儲器的分類

(-)存儲器的層次化結構

(三)半導體隨機存取存儲器

1.SRAM存儲器的工作原理

2.DRAM存儲器的工作原理

3.只讀存儲器

4.Flash存儲器**

(五)主存儲器與CPU的連接

(六)雙口RAM和多模塊存儲器

(七)高速緩沖存儲器(Cache)

1.程序訪問的局部

2.Cache的基本工作原理

3.Cache和主存之間的映射方式

4.Cache中主存塊的替換算法

5.Cache寫算法

(A)虛擬存儲器

1.虛擬存儲器的基本概念

2.頁式虛擬存儲器

3.段式虛擬存儲器

4.段頁式虛擬存儲器

5.TLB(快表)

【三年所占分值】

2009年:6分;2010年:18分;2011年:16分

【歷年考研真題及參考答案】

2009年

14.某計算機的Cache共有16塊,采用2路組相聯映射方式(即每組2塊)。每個主存塊大

小為32字節,按字節編址。主存129號單元所在主存塊應裝入到的Cache組號是(C)

A.0B.1C.4D.6

解析:129=(100000010)2

15.某計算機主存容量為64KB,其中ROM區為4KB,其余為RAM區,按字節編址。現

要用2K*8位的ROM芯片和4K*4位的RAM芯片來設計該存儲器,則需要上述規格的ROM

芯片數和RAM芯片數分別是(D)

A.1、15B.2、15

C.1、30D.2、30

21.假設某計算機的存儲系統由Cache和主存組成。某程序執行過程中訪存1000次,其中

訪問Cache缺失(未命中)50次,則Cache的命中率是(D)

A.5%B.9.5%C.50%D.95%

2010年

15.假定用若干個2kX4位芯片組成一個8kX8位存儲器,則地址0B1FH所在芯片的最小地

址是()

A.0000H

B.0600H

C.0700H

D.0800H

參考答案:D

解析:2k.8k

11位->13位

0101100011111

0100000000000

16.下列有關RAM和ROM的敘述中,正確的是()

IRAM是易失性存儲器,ROM是非易失性存儲器

IIRAM和ROM都采用隨機存取方式進行信息訪問

IIIRAM和ROM都可用作Cache

IVRAM和ROM都需要進行刷新

A.僅1和II

B.僅II和HI

c.僅I,n,in

D.僅n,in,iv

參考答案:A

17.下列命令組合情況中,?次訪存過程中,不可能發生的是()

A.TLB未命中,Cache未命中,Page未命中

B.TLB未命中,Cache命中,Page命中

C.TLB命中,Cache未命中,Page命中

D.TLB命中,Cache命中,Page未命中

參考答案:D

解析:TLB:Translationlookasidebuffer,

轉換后援緩沖器,或稱為快表;

44(12分)某計算機的主存地址空間大小為256MB,按字節編址,指令Cache和數據Cache

分離,均有8個Cache行,每個Cache行大小為64B,數據Cache采用直接映射方式,現有

兩個功能相同的程序A和B,其偽代碼如下所示:

假定int類型數據用32位補碼表示,程序編譯時i,j,sum均分配在寄存器中,數組a按行優

先方式存放,其首地址為320(十進制數)。請回答下列問題,要求說明理由或給出計算過程。

(1)若不考慮用于Cache一致性維護和替換算法的控制位,則數據Cache的總容量為多少?

(2)數組元素a[0][31]和a[l]山各自所在的主存塊對應的Cache行號分別是多少(Cache行

號從0開始)?

(3)程序A和B的數據訪問命中率各是多少?哪個程序的執行時間更短?

程序A:

inta[256][256];

intSum_arrayl()

{inti,j,Sum=0;

for(i=0;i<256;i++)

for(j=0;j<256y++)

Sum+=a[i皿;

ReturnSum;

}

程序B;

inta[256][256];

intSum_array2()

{intiJ,Sum=0;

fbr(j=0;j<256;j++)

for(i=0;i<256;i++)

Sum+=a[i][j];

ReturnSum;

}

(1)行優先順序

將數組元素按行向量排列,第i+1個行向量緊接在第i個行向量后面。

【例】二維數組Amn的按行優先存儲的線性序列為:all,al2,…,aln,a21,a22,...,a2n,……,

aml,am2,...,amn

(2)列優先順序

將數組元素按列向量排列,第i+1個列向量緊接在第i個列向量后面。

【例】二維數組Amn的按列優先存儲的線性序列為:a11,a21,...,am1,a12,a22,...,am2,,

aln,a2n,...,amn

解析:

(1)數據cache共8行,每行64B,共有8x64B=512B:直接映射方式,按字節編制,cache

標志位tag為28-9=19位,附加1位有效位,因此8行共增加20x8/8B=20字節。因此數據

Cache總容量為532字節。

(2)A[0][31]主存地址320+31x4=444=1101U100B,最低6位為塊內地址,對應Cahce行

號為110,十進制6,主存地址320+(256+1)x4=1348,1348/64mod8=5?

(3)程序A執行速度快,程序A命中率=15/16

程序B命中率=0

2011年

14.下列各類存儲器中,不采用隨機存取方式的是

A.EPROMB.CDROMC.DRAMD.SRAM

參考答案:B?

【解析】:光盤采用順序存取方式。

15.某計算機存儲器按字節編址,主存地址空間大小為64MB,現用4MX8位的RAM芯片

組成32MB的主存儲器,則存儲器地址寄存器MAR的位數至少是

A.22位B.23位C.25位D.26位

參考答案:D。

【解析工64MB的主存地址空間,故而MAR的尋址范圍是64M,故而是26位。其他條

件都是干擾條件。

44.(12分)某計算機存儲器按字節編址,虛擬(邏輯)地址空間大小為16MB,主存(物

理)地址空間大小為1MB,頁面大小為4KB;Cache采用直接映射方式,共8行;主存與Cache

之間交換的塊大小為32B。系統運行到某一時刻時,頁表的部分內容和Cache的部分內容

分別如題44-a圖、題44-b圖所示,圖中頁框號及標記字段的內容為十六進形式。

虛頁號有效位頁框號

0106

1104

2115

3102

40—

512B

60—

1132

題44-a圖頁表的部分內容

行號有效位標記

01020

10—

2101D

31105

41064

5114D

60—

7127A

題44-b圖Cache的部分內容

請回答下列問題。

(1)虛擬地址共有幾位,哪幾位表示頁號?物理地址共有幾位,哪幾位表示頁框號(物理

頁號)?

(2)使用物理地址訪問Cache時,物理地址應劃分成哪幾個字段?要求說明每個字段的位

數及在物理地址中的位置。

(3)虛擬地址001C60H所在的頁面是否在主存中?若在主存中,則該虛擬地址對應的物理

地址是什么?訪問該地址時是否Cache命中?要求說明理由。

(4)假定為該機配置?個4路組相聯的TLB,該TLB共可存放8個頁表項,若其當前內容

(十六進制)如題44-c圖所示,則此時虛擬地址024BACH所在的頁面是否在主存中?要

求說明理由。

恨號布他以標記u板號年槍位幃圮*號writm修號祐汜

0?-1001150?1012IF

1HI、2D0--10080-■

題44-c圖TLB的部分內容

解答:

(1)

頁面大小為4KB=212B,故頁內地址12位。

虛擬地址空間大小為16MB=224B,故虛地址共24位,低12位為頁內地址,高24-12=12

位為虛頁號。

主存地址空間大小為1MB=22OB,故實地址共20位,低12位為頁內地址,高20-12=8

位為頁框號(物理頁號)。

(2)

主存與Cache之間交換的塊大小為32B=25B,故cache行(塊)內地址5位。

Cache共8行=23行,故Cache大小為32X8=256B=28B。Cache地址=3位Cache行號+5

位行內地址。

主存物理地址區數=lMB/256B=220/28=212=4096。

故物理地址分三個字段:高12位為標記tag,中間3位為Cache行號,最低5位為行內地址。

(3)

虛擬地址001C60H的低12位C60H為頁內地址,高12位001H為虛頁號。

查頁表可知,虛頁001H對應的有效位為1,故該頁已調入主存,主存頁號為04H,故主

存地址為04c60H。

主存地址04C60H=00000100110001100000b的低5位00000b為行內地址,中間3位011b

為Cache行號,查Cache標記可知,第3行的有效位為1,但標記為105H,故該地址Cache

不命中。

(4)

4路組相聯的TLB,共可存放8個頁表項,故TLB共2組,每組4可存放4個頁表項。

虛存地址高12位為虛頁號,故慢表的表項數為212=4096,慢表地址12位。

TLB共2組,故慢表12位地址中的最低1位選擇TLB的組,也即慢表的4096個表項中,

偶地址的表項可以映射到TLB的第0組中的四個表項中的任意一個,奇地址的表項可以映

射到TLB的第1組中的四個表項中的任意一個。

慢表12位地址中的高11位為訪問TLB的標記。

虛擬地址024BACH的高12位024H=000000100100b為虛地址,其中最低1位0選擇TLB

第0組,iff11{500000010010b=012Ho查TLB表可知,第0組最后一項標記為012H,其

有效位為1,說明該虛頁已調入主存,其頁框號為1FH,故其實地址為1FBACH。

【試題示例】

某計算機的主存地址位數為32位,按字節編址。假定數據Cache中最多存放128個主存

塊,采用4路組相聯方式,塊大小為64Byte,每塊設置了1位有效位“臟(Dirty)”位。要

求:

(1)分別指出主存地址中標記(Tag)、組號(Index)和塊內地址(Offset)三部分的位

置和位數

(2)計算該數據Cache的總位數(請給出詳細計算過程)

解答:32位地址,按字節編址顯示內存共有4G*8位。

快存容量為128塊*64字節=8K字節

4路組相聯指的是每組有4個數據塊,快存共有32個組。

主存地址中塊內地址為6位;

組號為5位;

標記為21位。

快存地址共13位,6位字號,7位塊號。

數據8位,主存標記21位,臟位1位

【模擬題】

1、用定量分析方法證明模塊交叉存儲器帶寬大于順序存儲器帶寬。

解:假設(1)存儲器模塊字長等于數據總線寬度(2)模塊存取一個字的存儲周期等于T(3)

總線傳送周期為r(4)交叉存儲器的交叉模塊數為m.

交叉存儲器為了實現流水線方式存儲,即每經過T時間延遲后啟動下一模塊,應滿足

T=mr(1)

交叉存儲器要求其模塊數Ng以保證啟動某模塊后經過mi時間后再次啟動該模塊時,

它的上次存取操作已經完成。這樣連續讀取m個字所需要時間為tl=T+(m-1)T=im+

mT-x=(2m-1)T(2)

故存儲器帶寬為W1=1/tl=l/(2m-l)T(3)

而順序方式存儲器連續讀取m個字所需時間為

t2=mT=m2xT(4)

存儲器帶寬為W2=l/t2=l/(m2xT)(5)

比較(3)和(5)式可知,交叉存儲器帶寬Wl>順序存儲器帶寬W2

2、設存儲器容量為32字,字長64位,模塊數m=4,分別用順序方式和交叉方式進行組織.

若存儲周期T=200ns,數據總線寬度為64位,總線傳送周期T=50ns,問:順序存儲器

和交叉存儲器帶寬各是多少?

解:順序存儲器和交叉存儲器連續讀出m=4個字的信息總量都是

q=64位x4=256位

順序存儲器和交叉存儲器連續讀出4個字所需的時間分別是

t2=mT=4x200ns=800ns=8x10-7(S)

tl=T+(iiHl)t=200ns+3x50ns=350ns=3.5x10-7(S)

順序存儲器帶寬W2=q/t2=256/(8x10-7)=32x107(位/S)

交叉存儲器帶寬W1=q/tl=256/(3.5x10-7)=73x107(位/S)

3、設存儲器容量為512K字,字長32位,模塊數M=8,分別用順序方式和交叉方式進行

組織。存儲周期T=200ns,數據總線寬度為32位,總線傳送周期t=50ns。問順序存儲

器和交叉存儲器帶寬各是多少?

解:順序存儲器和交叉存儲器連續讀出m=8個字的信息總量都是:

q=32位'8=256位

順序存儲器和交叉存儲器連續讀出8個字所需的時間分別是:

t2=mT=8x200ns=1600ns=16x10-7(s)

tl=T+(m-l)t=200+7><50ns=550ns=5.5xl0-7(s)

順序存儲器和交叉存儲器的帶寬分別是:

W2=q/t2=256-(1.6x10-7)=16x107(位/s)

Wl=q/tl=256+(5.5x10-7)=46.5x107(位/s)

4、CPU執行一段程序時,cache完成存取的次數為1900次,主存完成存取的次數為100

次,已知cache存取周期為50ns,主存存取周期為250ns.

求:(Dcache/主存系統的效率。(2)平均訪問時間。

解:命中率H=Nc/(Nc+Nm)=1900/(1900+100)=0.95

ta=hxtc+(l-h)xtm=0.95x50+(l-0.95)x250=60ns(2)

e=tc/ta=50/60=83.3%(1)

5、已知cache命中率H=0.98,主存比cache慢4倍,已知主存存取周期為200ns,求cahce

/主存系統的效率和平均訪問時間

解:

r=tm/tc=4

tc=tm/4=50ns

ta=hxtc+(l-h)tm=0.98x50+(1-0.98)x200=53ns

e=tc/ta=50/53x100%=94.3%

6、有?個16Kxi6位的存儲器,由1KX4位的DRAM芯片構成(芯片是64/64結構),

存儲器讀寫周期為0.5us。問:

(1)共需要多少RAM芯片?

(2)存儲體的組成框圖

(3)采用異步刷新方式,如單元刷新間隔不超過2ms,則刷新信號周期是多少

(4)如采用集中刷新方式,存儲器刷新一遍最少用多少讀/寫周期?死時間率是多少?

解:

(1)存儲器的總容量為16KX16位=256K位,所以用RAM芯片為4K位,故芯片總數為

256K位/4K位=64片

(2)由于存儲單元數為16K,故地址長度為14位(設A13?A0)。芯片單元數為1K則占用

地址長度為10位(A9-A0),每一組16位(4片),共16組,組與組間譯碼采用4:16譯

碼。

(3)采用異步刷新方式,在2ms時間內分散地把芯片64行刷新一遍,故刷新信號的時間

間隔為2ms/64=31.25ps,即可取刷新信號周期為30ps

(4)如采用集中刷新方式,則所需刷新時間為64X0.5=32US。2ms=2000ps,則死時間率=

32/2000XI00%=1.6%

四、指令系統

【大綱要求】

(-)指令格式

1.指令的基本格式

2.定長操作碼指令格式

3.擴展操作碼指令格式

(二)指令的尋址方式

1.有效地址的概念

2.數據尋址和指令尋址

3.常見尋址方式

(三)CISC和RISC的基本概念

【三年所占分值】

2009年:4分;2010年:13分;2011年:4分

【歷年考研真題及參考答案】

2009年

16.某機器字長16位,主存按字節編址,轉移指令采用相對尋址,由兩個字節組成,第一

字節為操作碼字段,第二字節為相對位移量字段。假定取指令時,每取一個字節PC自動加

lo若某轉移指令所在內存地址為2000H,相對位移量字段的內容為06H,則該轉移指令成

功轉移后的目標地址是(C)

A.2006HB.2007HC.2008HD.2009H

17.下列關于RISC的敘述中,錯誤的是:(A)

A.RISC普遍采用微程序控制器

B.RISC大多數指令在?個時鐘周期內完成

C.RISC的內部通用寄存器數量相對CISC多

D.RISC的指令數、尋址方式和指令格式種類相對CISC少

2010年

19.下列不會引起指令流水阻塞的是()

A.數據旁路

B.數據相關

C.條件轉移

D.資源沖突

參考答案:A

解析:

資源沖突:多條指令進入流水線后在同一機器時鐘周期內爭

用同一功能部件所發生的沖突.

數據相關:在一個程序中,如果必須等前?條指令執行完畢

后,才能執行后一條指令,那么這兩條指令就是

數據相關的。

條件轉移:當執行轉移指令時.,依據轉移條件的產生結果,

可能為順序取下條指令;也可能轉移到新的目標

地址取指令,從而使流水線發生斷流。

?數據旁路技術就是用于解決指令流水中的數據相關,換句話說,在遇到數據相關時,

在可能的情況下可以通過數據旁路技術加以克服。

?設置相關專用通路,即不等前一條指令把計算結果寫回寄存器組,下一條指令不再

讀寄存器組,而是直接把前一條指令的ALU的計算結果作為自己的輸入數據開始計

算過程,使本來需要暫停的操作變得可以繼續執行,這種稱為數據定向或數據旁路

技術。

43.(11分)某計算機字長為16位,主存地址空間大小為128KB,按字編址,采用字長指令格式,

指令各字段定義如下:

15121110

|Op|Ms雇|蛔ImI

施做目

轉移指令采用相對尋址方式,相對偏移是用補碼表示,尋址方式定義如下:

Ms/Md尋址方式助記符含義

000B寄存器直接Rn操作數=(Rn)

001B寄存器間接(Rn)操作數=((Rn))

010B寄存器間接、自增(Rn)+操作數=((Rn)),(Rn)+lfRn

011BHIMD(Rn)轉移目標地址=(PC)+(Rn)

注:(X)表示有儲蓄地址X或寄存器X的內容,請回答下列問題:

(1)該指令系統最多可有多少條指令?該計算機最多有多少個通用寄存器?存儲器地址寄

存器(MAR)和存儲器數據寄存器(MDR)至少各需多少位?

答:0P碼4位,16條指令;

寄存器數8個;

128K/2=64K=216

MAR:16位

MDR:16位

(2)轉移指令的目標地址范圍是多少?

64K

(0,216-1)

(3)若操作碼0010B表示加法操作(助記符為add),寄存器R4和R5的編號分別為100B和

101B,R4的內容為1234H,R5的內容為5678H,地址1234H中的內容為5678H,地址5678H

中的內容為1234H,則匯編語言為add(R4),(R5)+(逗號前源操作數,逗號后為目的操作數)

對應的機器碼是什么(用卜六進制表示)?該指令執行后,哪些寄存器和存儲單元的內容會

改變?改變后的內容是什么?

答:0010001100010101->2315H

(R5)=5679H

(5678H)=68ACH

2011

16.偏移尋址通過將某個寄存器內容與一個形式地址相加而生成有效地址。卜列尋址方式中,

不屬于偏移尋址方式的是

A.間接尋址B.基址尋址C.相對尋址D.變址尋址

參考答案:Ao

【解析】:

間接尋址不需要寄存器,EA=(A)o

基址尋址:EA=A+基址寄存器內容;

相對尋址:EA=A+PC內容;

變址尋址:EA=A+變址寄存器內容。

18.下列給出的指令系統特點中,有利于實現指令流水線的是

I.指令格式規整且長度一致

II.指令和數據按邊界對齊存放

III.只有Load/Store指令才能對操作數進行存儲訪問

A.僅I、IIB.僅n、nic.僅I、inD.1、II、in

參考答案:D。

【解析】:以上三個RISC特征都能夠有效降低取指令或執行指令的復雜度,從而有利于流水

線操作。

【模擬題】

五、中央處理器(CPU)

【大綱要求】

(-)CPU的功能和基本結構

(二)指令執行過程

(三)數據通路的功能和基本結構

(四)控制器的功能和工作原理

1.硬布線控制器

2.微程序控制器

微程序、微指令和微命令;微命令格式;微指令的編碼方式;微地址的形式方式。

(五)指令流水線

1.指令流水線的基本概念

2.指令流水線的基本實現**

3.超標量和動態流水線的基本概念

(六)多核處理器的基本概念**

【三年所占分值】

2009年:17分;2010年:4分;2011年:2分

【歷年考研真題及參考答案】

2009年

18.某計算機的指令流水線由四個功能段組成,指令流經各功能段的時間(忽略各功能段之

間的緩存時間)分別為90ns、80ns、70ns、60ns,則該計算機的CPU時鐘周期至少是(A)

A.90nsB.90nsC.90nsD.90ns

19.相對于微程序控制器,硬布線控制器的特點是(D)

A.指令執行速度慢,指令功能的修改和擴展容易

B.指令執行速度慢,指令功能的修改和擴展難

C.指令執行速度快,指令功能的修改和擴展容易

D.指令執行速度快,指令功能的修改和擴展難

44.(13分)某計算機字長16位,采用16位定長指令字結構,部分數據通路結構如下圖所

示(見下頁),圖中所有控制信號為1時表示有效、為0時表示無效,例如控制信號MDRinE

為1時表示允許數據從DB打入MDR,MDRin為1表示允許數據從內總線打入MDR。假

設MAR的輸出一直處于使能狀態。加法指令"ADD(RI),R0”的功能為(RO)+((R1))O(R1),

即將R0中的數據寫入R1的內容所指主存單元的數據相加,并將結果送入R1的內容所指內

存單元中保存。

下表給出了上述指令取指和譯碼階段每個節拍(時鐘周期)的功能和有效控制信號,請按表中

描述方式用表格列出指令執行階段每個節拍的功能和有效控制信號。

?Mi?R<MiMAk

?UH1FH1

C3*STTiRwiil.IRni

Ci

?解答

(1)數據通路組成(運算器、存儲器、總線、指令系統、CPU)

(2)指令周期、CPU周期、時鐘周期的概念

(3)機器指令ADD(R1),RO的含義:(RO)+((R1))O(R1)

(4)指令周期流程圖設計(插圖)

(5)指令執行階段(執行周期)控制信號列表(插表)

解答:一個CPU周期含4個時鐘周期C1?C4。指令周期流程圖山3個CPU周期組成,

到I個41rIMW|

6&個cIMWl

>Ml⑼應8?MM

指令機行階?各節招功艇與相效控制信號制衷

時林

c已也.山上W3?NABKI,.?MAk.4

C.\:1V.M*(VjU,Mrtuk.\tl此

V,V'WR.弼jI

M*1Fr4-■k,??Ml,V

"Un?MVK地hmfl通

r.\QM?VM.??麗

cMMi4tWMlw"1&,,E?\1E%'

2010年

12、下列選項中,能縮短程序執行時間的措施是(D)

I提高CPU時鐘頻率,n優化數據通過結構,

III對程序進行編譯優化

A:僅I和HB:僅I和m

C:僅II和HID:I,II,HI

18.下列寄存器中,匯編程序員可見的是()

A.存儲器地址寄存器(MAR)

B.程序計數器(PC)

C.存儲器數據寄存器(MDR)

D.指令寄存器(IR)

參考答案:B

2011年

17.某機器有一個標志寄存器,其中有進位/借位標志CF、零標志ZF、符號標志SF和溢出

標志OF,條件轉移指令bgt(無符號整數比較大于時轉移)的轉移條件是

A.CF+OF=1B./SF+ZF=1C./(CF+ZF)=1D./(CF+SF)=1

參考答案:C?

【解析工無符號整數比較做減法,若a>b,則a-b無進位/借位,也不為0。故CF=0且ZF=0。

【試題示例】

1、程序計數器PC用來存放指令地址,其位數和下列哪個寄存器相同?(D)

A.指令寄存器IRB.主存數據寄存器MDR

C.程序狀態字寄存器PSWRD.主存地址寄存器MAR

?下圖是一個簡化的CPU與主存連接結構示意圖(圖中省略了所有多路選擇器)。其

中有一個累加寄存器AC、-個狀態數據寄存器和其他四個寄存器:主存地址寄存

器MAR、主存數據寄存器MDR、程序計數器PC和指令寄存器IR,各部件及其之

間的連線表示數據通路,箭頭表示信息傳遞方向。

要求:

(1)請寫出圖中a、b、c、d四個寄存器的名稱

(2)簡述圖中指令從主存取到控制器的過程。

(3)說明數據從主存取出、運算、寫回主存所經過的數據通路(假定數據地址一在MAR中)。

c:主存地址寄存器

d:程序計數器

【模擬題】

六、總線

【大綱要求】

(一)總線概述

1.總線的基本概念

2.總線的分類

3.總線的組成及性能指標

(二)總線仲裁

1.集中仲裁方式

2.分布仲裁方式

(三)總線操作和定時

1.同步定時方式

2.異步定時方式

(四)總線標準

【三年所占分值】

2009年:2分;2010年:2分;2011年:2分

【歷年考研真題及參考答案】

2009年

20.假設某系統總線在一個總線周期中并行傳輸4字節信息,一個總線周期占用2個時鐘周

期,總線時鐘頻率為10MHz,則總線帶寬是(B)

A.10MB/SB.20MB/S

C.40MB/SD.80MB/S

2010年

20.下列選項中的英文縮寫均為總線標準的是()

A.PCLCRT、USB、EISA

B.ISA、CPI、VESA、EISA

C.ISA、SCSI、RAM、MIPS

D.ISA>EISA>PCI、PCI-Express

參考答案:D

CRT、CPI、MIPS、RAM

2011

20.在系統總線的數據線上,丕可能傳輸的是

A.指令B.操作數C.握手(應答)信號D.中斷類型號

參考答案:C?

【解析工一般而言,系統總線采用同步方式傳輸,握手信號屬于控制信號,不在數據總線

上傳輸。

【模擬題】

七、輸入輸出(I/O)系統

【大綱要求】

(一)I/O系統基本概念

(_)外部設備

1.輸入設備:鍵盤、鼠標

2.輸出設備:顯示器、打印機

3.外存儲器:硬盤存儲器、磁盤陣列、光盤存儲器

(三)I/O接口(I/O控制器)

1.1/0接口的功能和基本結構

2.I/O端口及其編址

3.1/0地址空間及其編碼

(四)I/O方式

1.程序查詢方式

2.程序中斷方式

中斷的基本概念;中斷響應過程;中斷處理過程;多重中斷和中斷屏蔽的概念。

3.DMA方式

DMA控制器的組成;DMA傳送過程。

4.通道方式

【三年所占分值】

2009年

溫馨提示

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

評論

0/150

提交評論