2020-2021 上 期中測之GU
一、 選擇題(每題1分,共15分)
1、馮·諾依曼結構計算機指令和資料表示的敘述中,正確的是( C ),
A、 指令和資料可以從形式上加以區分
B、 指令以二進制形式存放,資料以十進制形式存放
C、 指令和資料都以二進制形式存放
D、 指令和資料都以十進制形式存放
2、在機器數 ( B )中,零的表示形式是唯一的,
A、原碼 B、補碼 C、反碼 D、原碼和反碼
解:考的有點頻繁了...
3、若某數采用IEEE 754單精度浮點數格式表示為 4510 0000H,則其值是( B ),
A、 (+1.125)10×210 B、 (+1.125)10×211
C、 (+0.125)10×211 D、 (+0.125)10×210
解: IEEE 754 == 1 + 8 + 23
4510 0000H 化成2進制 0100 0101 0001 0000 0000 0000 0000 0000
0100 0101 0.001 0000 0000 0000 0000 0000
尾數部分 = (1.001)~2~ = 2^0^+2^-3^=1.125
階數部分 = (0100 0101 0)~2~ = 2+8+2^7^=138 = 真值 + 2^7^-1
則 真值 = 11
則答案 為 B
4、CPU中能進行算術和邏輯運算的最基本運算部件是( D ),
A、 多路選擇器 B、 移位器 C、 加法器 D、 ALU
5、考慮以下C語言代碼:
short si= -8196;
int i=si;
執行上述程式段后,i的機器數表示為( D ),
A、0000 9FFCH B、0000 DFFCH C、FFFF 9FFCH D、FFFF DFFCH
知識點:
定點整數:在原符號位和數值位之間添加新位,正加0;負原碼加0,負數反碼和補碼加1;
定點小數:在原符號位和數值位之間添加新位,正加0;負原補碼加0,負數反碼加1;
解:
-8196 = (1010 0000 0000 0100)~2~
補碼: 1101 1111 1111 1100
i = 1111 1111 1111 1111 1101 1111 1111 1100
= F F F F D F F C
6、下面有關半導體存盤器組織的敘述中,錯誤的是( D ),
A、存盤器的核心部分是存盤體,由若干存盤單元組成
B、存盤單元由若干個存放0或1的存盤元件構成
C、一個存盤單元有一個編號,就是存盤單元的地址
D、同一個存盤器中,每個存盤單元的寬度可以不同
解:
現代計算機的主存盤器由半導體存盤器構成,其中存放資訊的地方稱為存盤陣列;
每個存盤陣列包含若干個存盤單元,每個存盤單元由若干個記憶單元(cell)構成,每個記憶單元存放一位資訊(0或1),
某一臺計算機的主存盤器編址方式,總是由其對應的指令集體系結構(ISA)確定的;
現代通用計算機大多采用按位元組編址方式,即主存盤器中每個位元組有一個地址,也即每個存盤單元的寬度都是8位,
7、以下是有關段式虛擬存盤器的敘述,其中錯誤的是( D ),
A、段是邏輯結構上相對獨立的程式塊,因此段是可變長的
B、按程式中實際的段來分配主存,被分配后的主存塊是可變長的
C、每個段表項必須記錄對應段在主存的起始位置和段的長度
D、分段方式對低級語言程式員和編譯器來說是透明的
8、在計算機系統中,描述系統運行狀態的部件是( D ),
A、程式計數器 B、累加器 C、通用暫存器 D、程式狀態字暫存器
二、簡答題
1、已知十進制數x=-66,y=+95,設機器數字長8位(含1位符號位),先表示出[x]補、[y]補和[-y]補,用補碼運算方式計算x-y,要求寫出詳細程序,判斷是否溢位,并給出相應的Z(零標志)、V(溢位標志)和C(進位標志),
[X] ~原~= (1100 0010)~2~
[X] ~反~= (1011 1101)~2~
[X] ~補~= (1011 1110)~2~
[Y]~原~ = (0101 1111)~2~
[-Y]~補~ = (1010 0001)~2~
[X-y]~補~ = [x]~補~ +[-Y]~補~=
1011 1110
+1010 0001
——————
1 0101 1111
發生了溢位,s~f1~=1 s~f2~= 0 有溢位
Z = 0 C = 1 V = 1
2、CPI的含義是什么?執行時間(回應時間)和CPI是什么關系?
答:CPI是指每條指令執行所用的時鐘周期數,
通常,一條特定指令的CPI是一個確定的值 ,而某個程式的CPI則是一個平均值,
一個程式的執行時間取決于該程式所包含的指令數、CPI和時鐘周期,
在指令條數和時鐘周期一定的情況下,CPI越大,執行時間越長,
三.分析計算題
1、“非常簡單CPU”的暫存器和內部組織結構如下:
存盤空間為64B,程式員可訪問的暫存器AC,另有作業用的6位地址暫存器AR、6位程式計數器PC、8位資料暫存器DR、2位指令暫存器IR,
指令集結構如下:

(1)假設初始時PC=0,AC=25H,記憶體各單元的內容如下所示,程式運行5個指令周期后,AC=? 寫出每步的程序,
| 單元號 | 內容 |
|---|---|
| 0 | 01000111 |
| 1 | 00000110 |
| 2 | 11101010 |
| 3 | 10000001 |
| 4 | 10101010 |
| 5 | 01010101 |
| 6 | 00000011 |
| 7 | 10101010 |
| 8 | 11111100 |
pc = 0,內容 = 01 000 111 執行AND
內容地址 = 000 111
M[000 111] = M[ 7 ] = 1010 1010
AC = 25H = 0010 0101
AC ^ 1010 1010 = 0010 0000 = 20H
pc=1,內容 = 00000110 執行 ADD
內容地址 = 000110 = 6
AC + 00000011 = 0010 0000 + 00000011
= 0010 0011 = 23H
pc=2,內容 = 11101010 執行INC
AC + 1 = 0010 0100 = 24H
pc =3 ,內容 = 10000001 執行 JMP
內容地址 = 000001 = 1 跳到1號單元
pc = 4,AC + 00000011 = 27H
故執行5個周期后,AC = 27H
(2)畫出CPU狀態圖,

因為指令暫存器IR有兩位,所以完成四種操作需要用的IR指令分別為00、01、10、11
(3)用RTL語言寫出各狀態的操作陳述句,
FETCH1: AR←PC (取址)
FETCH2: DR←M,PC←PC+1
FETCH3: IR←DR[7…6],AR←DR[5…0]
ADD1: DR←M
ADD2: AC←AC+DR
AND1: DR←M
AND2: AC←AC∧DR
JMP1: PC←DR[5…0]
INC1: AC←AC+1
3、某機字長32位,控制器采用微程式控制方式,微指令字長32位,采用水平型直接控制與欄位編碼控制相結合的微指令格式,共有微命令40個,其中9個微命令采用直接控制方式,31個微命令采用欄位編碼控制方式,共構成4個相斥類(各包含7個、16個、3個、5個微命令),可測驗的外部條件有2個,
設計該微指令的具體格式,控制存盤器容量是多少?
| 9個微命令 | 7個微命令 | 16個微命令 | 3個微命令 | 5個微命令 | 判別欄位 | 下址欄位 |
|---|---|---|---|---|---|---|
| 9 | 3 | 5 | 2 | 3 | 2 | 8 |
下址欄位有8位,控制存盤器容量為28=256個單元,
4、假設微程式控制器容量為1024×48位,微程式可在整個控存內實作轉移,反映所有指令執行狀態轉換的有限狀態機中有4個分支點,采用水平型微指令格式,并采用斷定法確定下一條微地址,即由專門的下地址欄位確定微地址,
1)設計微指令格式,說明各欄位的含義和位數;
2)對轉移控制欄位進行編碼,
(1)解:微程式控制器容量位 1024 × 48,說明下地址欄位有10位 ;
有4個分支點,說明需要對5鐘情況進行控制,轉移欄位有3位;
微操作碼欄位有 48 - 10 - 3 = 35位
(2)轉移控制欄位編碼:(注:編碼方式不唯一,只要正確即可)
000:下地址欄位指出的地址作為下一條微地址
100:根據分支1處的條件來選擇下一條微地址
101:根據分支2處的條件來選擇下一條微地址
110:根據分支3處的條件來選擇下一條微地址
111:根據分支4處的條件來選擇下一條微地址
5、某計算機CPU主頻為500MHz,CPI為5.
假定某外設的資料傳輸率為0.5MB/s,采用中斷方式與主機進行資料傳送,傳輸單位為32位,對應的中斷服務程式包含18條指令,中斷回應等其他開銷相當于兩條指令的執行時間,回答下列問題,要求給出計算程序,
1)在中斷方式下,CPU用于該外設I/O的時間占整個CPU時間的百分比是多少?
2)當該外設的資料傳輸率達到5MB/s時,改用DMA方式傳送資料,假定每次DMA傳送的塊大小為5000B,DMA預處理和后處理的總開銷為500個時鐘周期,則CPU用于外設I/O的時間占整個CPU時間的百分比是多少?(假設DMA與CPU之間沒有訪存沖突)
解:
(1)每次中斷處理的時鐘周期數為 (18+2)× 5 = 100
外設傳輸的資料為0.5MB/s,每次中斷傳送4位元組,
中斷次數 = 0.5MB / 4B = 125000次
100 × 125000 = 12.5M 個時鐘周期
CPU主頻500MHZ,時間為12.5/500=2.5%
(2)5MB/1000B = 1000次
500 × 1000 =0.5M
0.5M / 500M = 0.1%
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/249472.html
標籤:其他
上一篇:WIFI直接消失了怎么辦?注意是直接消失,不留一點痕跡
下一篇:字符大小寫轉換
