5. 在計算機(jī)體系結(jié)構(gòu)中,CPU內(nèi)部包括程序計數(shù)器PC、存儲器數(shù)據(jù)寄存器MDR、指令寄存器IR和存儲器地址寄存器MAR等。若CPU要執(zhí)行的指令為:MOV R0,#100(即將數(shù)值100傳送到寄存器R0中),則CPU首先要完成的操作是(10)。
(10)A.100→R0
B. 100→MDR
C. PC→MAR
D. PC→IR
參考答案:(10)D 。
解析:程序計數(shù)器指向指令寄存器地址,然后就可以執(zhí)行下面的指令了
MOV R0,#100,采用的是立即數(shù)尋址方式,這條指令(包含操作數(shù)R0和#100)被匯編器編譯成一條機(jī)器代碼,此指令執(zhí)行前被加載到指令緩沖隊列里,執(zhí)行時 CPU在讀取此機(jī)器代碼時就讀取了#100,#100立即就可以被送往R0(而不用到寄存器或者內(nèi)存中去取操作數(shù)),因此叫做立即數(shù)尋址,指令執(zhí)行效率最高。
6. 某指令流水線由5段組成,各段所需要的時間如圖2所示。連續(xù)輸入10條指令時的吞吐率為 (11) 。
圖 2
(11) A.0.1428/Δt
B.0.2041/Δt
C.0.2857/Δt
D.0.3333/Δt
參考答案:(11)C。
解析:從圖3-2中可看出,該流水線各段所經(jīng)歷的時間不一樣,因此,該指令流水線吞吐率的計算公式為
式中m為流水線的段數(shù);n為輸入的指令數(shù);Δti為第i段所需時間;Δtj為該段流水線中瓶頸段的時間。將題中已知條件代入上式,則吞吐率TP的計算結(jié)果如下所示。
7. 設(shè)有定義"enumterm{my,your=4,his,her=his+10};",則
printf("%d,%d,%d,%d ",my,your,his,her);的輸出是(12)
(12) A.0,l,2,3
B.0,4,0,10
C.0,4,5,15
D.1,4,5,15
參考解答:(12) C。
解析:按枚舉類型定義的規(guī)定,枚舉類型team的枚舉常量對應(yīng)的整數(shù)分別是my=0、your=4、his=5、her=15。所以語句輸出0,4,5,15。解答是C。
8.以下對枚舉類型名的定義中,正確的是(13)
(13) A.enuma={one,two,three};
B.enuma{a1,a2,a3};
C. enuma={’1’,’2’,’3’};
D. enuma{"one","two","three"};
參考答案:(13) B。
解析:枚舉類型定義的句法是:
enum枚舉類型名{枚舉類型常量1,枚舉類型常量2,……};
其中枚舉類型常量都是互不相同的標(biāo)識符。所以定義enuma{a1,a2,a3};
是一個正確的定義。任何在枚舉類型名之后接上=,或用字符常量,或用字符串常量作為枚舉類型常量都是不正確的定義。解答應(yīng)是B。
9. CPU執(zhí)行程序時,為了從內(nèi)存中讀取指令,需要先將 (14) 的內(nèi)容輸送到地址總線上。
(14) A.指令寄存器
B.標(biāo)志寄存器
C.程序計數(shù)器
D.變址寄存器
參考答案:(14)C。
解析:當(dāng)CPU從內(nèi)存中讀取指令的時候(即在存取指令周期中),CPU首先將程序計數(shù)器(PC)的內(nèi)容送到地址總線上,同時送出內(nèi)存的讀控制信號,將所選中的內(nèi)存單元的內(nèi)容讀入CPU,并將其存放在指令寄存器中。
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |