關於指令譯碼單元:不管是硬碟上、記憶體中還是CPU中,指令確實都是以二進位制(0、1)方式儲存,但是二進位制儲存的指令並不見得就是CPU能直接處理的指令,比如 彙編語句 mov AX,BX 的二進位制機器碼 1000 1011 1100 0011CPU 核心的運算單元並不知道 1000 1011 1100 0011 是什麼意思,要透過譯碼器才能把這一段機器碼轉換為控制核心電路工作的訊號——微碼,換句話說,就是把二進位制的程式程式碼(軟體)變為硬體的電路控制訊號。另外,現代 x86 微處理器通常還要額外的譯碼電路,把 x86 CISC 指令動態翻譯成 RISC 指令,然後送到 CPU 的 RISC 核心再翻譯為控制訊號。關於預取緩衝器:如果不使用這個緩衝器,CPU 每次需要新指令的時候都從記憶體(或L2快取)讀取的話,那麼就得空耗幾百(或L2的幾十)個週期等待這些慢速裝置。L1 資料快取以及 CPU 核心裡面的指令暫存器佇列 可以以更高的速度執行,讓 CPU 一旦需要就能在幾個或一個週期內從中取得新指令,從而大大加快指令連續執行的速度。
關於指令譯碼單元:不管是硬碟上、記憶體中還是CPU中,指令確實都是以二進位制(0、1)方式儲存,但是二進位制儲存的指令並不見得就是CPU能直接處理的指令,比如 彙編語句 mov AX,BX 的二進位制機器碼 1000 1011 1100 0011CPU 核心的運算單元並不知道 1000 1011 1100 0011 是什麼意思,要透過譯碼器才能把這一段機器碼轉換為控制核心電路工作的訊號——微碼,換句話說,就是把二進位制的程式程式碼(軟體)變為硬體的電路控制訊號。另外,現代 x86 微處理器通常還要額外的譯碼電路,把 x86 CISC 指令動態翻譯成 RISC 指令,然後送到 CPU 的 RISC 核心再翻譯為控制訊號。關於預取緩衝器:如果不使用這個緩衝器,CPU 每次需要新指令的時候都從記憶體(或L2快取)讀取的話,那麼就得空耗幾百(或L2的幾十)個週期等待這些慢速裝置。L1 資料快取以及 CPU 核心裡面的指令暫存器佇列 可以以更高的速度執行,讓 CPU 一旦需要就能在幾個或一個週期內從中取得新指令,從而大大加快指令連續執行的速度。