普考-資訊處理計算機概要113 年第 9 題單選題
下列有關計算機記憶體階層(memory hierarchy)結構的敘述,何者錯誤?
A依據單位記憶體容量的價格排序:暫存器(register)>快取記憶體(cache memory)>主記憶體(main memory)>磁碟(magnetic disks)
B依據容量大小排序:磁碟>主記憶體>快取記憶體>暫存器
CL1 快取記憶體的設置目的著重在存取速度
D相鄰的兩個記憶體階層間的最小資料傳輸單位是位元組(byte)正確答案
D正確答案
記憶體階層中,相鄰層之間的資料傳輸單位是「區塊(block)」或「快取線(cache line)」,不是位元組。
為什麼答案是 D
錯誤(即本題答案)。相鄰記憶體階層間的傳輸單位不是 byte,而是「區塊 block」或「快取線 cache line」,例如 CPU 與快取間常以 64 bytes 為一個 cache line 傳輸,主記憶體與磁碟間則以 page(4KB)為單位。
載入中…
完整詳解
Pro · 無限重點 記憶體階層中,相鄰層之間的資料傳輸單位是「區塊(block)」或「快取線(cache line)」,不是位元組。
看到「最小傳輸單位是 byte」直接錯!記憶體層間是以 block 傳輸,通常 32~128 bytes。
逐選項分析
A✕
正確。越上層(接近 CPU)單位容量的價格越貴:暫存器最貴 > 快取 > 主記憶體 (DRAM) > 磁碟最便宜,這是記憶體階層的基本特性。
B✕
正確。越下層容量越大:磁碟 (TB 級) > 主記憶體 (GB 級) > 快取 (MB 級) > 暫存器 (bytes 級),與價格排序相反。
C✕
正確。L1 快取是最靠近 CPU 的快取層,設計重點在「速度」(通常 1-2 cycle),容量雖小但求快;L2、L3 則容量較大但速度較慢。
D✓ 正確
錯誤(即本題答案)。相鄰記憶體階層間的傳輸單位不是 byte,而是「區塊 block」或「快取線 cache line」,例如 CPU 與快取間常以 64 bytes 為一個 cache line 傳輸,主記憶體與磁碟間則以 page(4KB)為單位。
記憶體階層間的資料傳輸單位
| 階層間 | 傳輸單位 | 典型大小 | 術語 |
|---|
| 暫存器 ↔ 快取 | word | 4-8 bytes | word |
| 快取 ↔ 主記憶體 | 區塊 | 32-128 bytes | cache line / block |
| 主記憶體 ↔ 磁碟 | 分頁 | 4KB-8KB | page |
| 磁碟 ↔ 磁帶 | 檔案區段 | MB 級 | segment |
D 選項把傳輸單位從「block(區塊)」偷換成「byte(位元組)」。byte 是記憶體定址的最小單位,但階層間傳輸為了利用「局部性原理(locality)」,一次會搬一整個 block,絕非單一 byte。