高考申論題
114年
[統計] 資料處理
第 一 題
📖 題組:
編譯器(compiler)將二維陣列資料映射到線性記憶體空間,一般採 Row-major 或 Column-major 兩種不同儲存順序。 (一)何謂 Row-major 儲存順序與 Column-major 儲存順序?(8 分) (二)試問程式碼應如何撰寫,對整個巨大型二維陣列之資料讀取,才能獲得較高的讀取時間效率?(6 分)並請給予一程式片段範例做說明。(6 分)
編譯器(compiler)將二維陣列資料映射到線性記憶體空間,一般採 Row-major 或 Column-major 兩種不同儲存順序。 (一)何謂 Row-major 儲存順序與 Column-major 儲存順序?(8 分) (二)試問程式碼應如何撰寫,對整個巨大型二維陣列之資料讀取,才能獲得較高的讀取時間效率?(6 分)並請給予一程式片段範例做說明。(6 分)
📝 此題為申論題,共 2 小題
小題 (一)
何謂 Row-major 儲存順序與 Column-major 儲存順序?(8 分)
思路引導 VIP
作答時先點出記憶體為單維線性空間的本質,說明為何需要映射規則。接著分別給出 Row-major 與 Column-major 的定義與特徵。為求高分,建議加入簡例(如2x2矩陣)具體呈現資料在記憶體中的排列順序,並舉出代表性的程式語言。
小題 (二)
試問程式碼應如何撰寫,對整個巨大型二維陣列之資料讀取,才能獲得較高的讀取時間效率?(6 分)並請給予一程式片段範例做說明。(6 分)
思路引導 VIP
本題測驗考生對「記憶體階層架構」與「空間區域性(Spatial Locality)」的理解。作答時應先點出 CPU 快取(Cache)的運作機制,再說明程式巢狀迴圈的存取順序必須與編譯器的記憶體映射方式(Row-major 或 Column-major)一致,方能大幅減少快取失誤(Cache Miss),提升效能。