1.某計算機系統中,16位浮點數的表示格式如圖1所示。其中階碼4位(含1位符號)為定點整數,尾數12位(含1位符號)為定點小數。
圖 1
設一個數機器碼為1110 0010 1000 0000,若階碼為移碼且尾數為原碼,則其十進制數真值為 (1) 。
(1) A.20
B.25
C.0.078 125
D.20.969 375
參考答案:(1)A。
解析:為了充分利用尾數來表示更多的有效數字,即提高數據的表示精度,通常采用規(guī)格化浮點數。規(guī)定浮點數在運算結束將運算結果存到計算機中時,必須是規(guī)格化的浮點數。規(guī)格化浮點數尾數的最高數值位是有效數字,即正尾數0.5≤F<1,負尾數-1
對于本試題的解答思路是,對給定的機器碼按浮點數格式得到階碼和尾數,然后將階碼變?yōu)槭M制數,最后得到浮點數的十進制真值。如果給定的浮點數機器碼不是用規(guī)格化表示的,則可將其表示為規(guī)格化的機器碼。規(guī)格化時,先看給定的浮點數機器碼的尾數是用什么碼表示的,然后再看是否已是規(guī)格化數,如果不是,將尾數小數點移位,但要注意,為保持浮點數的真值不變,階碼一定要進行相應的調整。在解答此類題目時,一定要注意題目條件中給出的階碼和尾數是用什么碼表示的,否則很容易出錯,而得不到正確的計算結果。
針對本題,對所給機器碼1110 0010 1000 0000,按所規(guī)定的浮點數表示形式,可知階碼為1110(最高位為階符1),尾數為0010 1000 0000(最高位為尾符0)。
0.0101B= 010100B=20。?① 若階碼為移碼,1110表示為十進制數加6,尾數為原碼表示加0.0101B,所以浮點數為26
、 0.101B,階碼-3的補碼為1101,因為浮點數規(guī)格化要求尾數最高數據位為有效數據位,即尾數絕對值大于等于0.5。?0.0101B=2-3?0.0101B=0.000101B=0.078125D。將此浮點數用規(guī)格化數形式表示:2-2?若階碼為補碼,1110表示為十進制數減2,尾數為補碼,因該尾數為正數,即加0.0101,該浮點數為2-2
2.某計算機主存按字節(jié)摘取cache的地址變換采用組相聯映像方式(即組內全相聯,組間直接映像)。高速緩存分為2組,每組包含4塊,塊的大小為512B,主存容量為1MB。構成高速緩存的地址變換表相聯存儲器容量為 (2) bit。每次參與比較的存儲單元為 (3) 個。
(2) A.4×10
B.4×11
C.8×10
D.8×11
(3) A.2
B.4
C.8
D.16
參考答案:(2)C;(3)B。
解析:某計算機主存按字節(jié)編址,主存與高速緩存Cache的地址變換采用組相聯映像方式(即組內全相聯,組間直接映像)。高速緩存分為2組,每組包含4塊,塊的大小為512B,主存容量為1MB。① 由于主存容量為1MB=220,高速緩存分為2=21組(即區(qū)內組號為1位),每組包含4=22塊(即組內塊號為2位),塊的大小為512B=29(即塊內地址為9位),因此主存區(qū)號=20-1-2-9=8位。
、 主存與高速緩存Cache的地址變換采用組相聯映像方式(即組內全相聯,組間直接映像),高速緩存的地址變換表的相聯存儲器中存放的用于比較的是8位的主存區(qū)號和2位的組內塊號,因此,相聯存儲器的一個單元應存放10位二進制數。
、 由于高速緩存共有8塊,因此,高速緩存的地址變換表的相聯存儲器容量應為8×10位。
、 由于組間采用直接映像,不需要進行比較,但組內采用全相聯映像,需要在一組的4塊內進行比較,故每次參與比較的存儲單元為4個。
相關推薦:北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |