一、何謂機器週期(machine cycle)?試詳述執行一條指令的步驟。(10 分)
詳解 (共 6 筆)
詳解
machine cycle (機械週期)
為CPU執行一個指令的過程,
指令步驟:
IF (Instruction fetch) :CPU根據程式計數器的內容,從主記憶體中取出要執行的指令,並儲存於指令暫存器中
ID(Instruction decode):CPU根據指令暫存器的內容加以解碼,分析運算碼和運算元,以便決定執行動作
EX(instruction execution):ALU根據ID階段分析結果,實際運算,並儲存在ALU暫存器中
WB(result write back):將結果回存於可見暫存器中
詳解
-
取指(Fetch):
- CPU 從主記憶體中讀取下一條要執行的指令。這個步驟需要兩個主要操作: a. 將程序計數器(Program Counter, PC)中存儲的地址發送到主記憶體。 b. 從主記憶體中讀取指令內容,並將其存儲在指令寄存器(Instruction Register, IR)中。
-
解碼(Decode):
- CPU 解析從指令寄存器中讀取的指令,以確定要執行的操作和操作數。解碼過程包括識別指令的操作碼(opcode)以及操作數的位置。
-
執行(Execute):
- 在這個階段,CPU 執行實際的指令操作。執行的具體步驟取決於指令的類型。這可能涉及算術運算、邏輯運算、資料移動等操作。如果有操作數需要使用,CPU 會從寄存器或記憶體中讀取相應的數據,然後執行指令。
-
寫回(Write Back):
- 如果執行階段產生了結果,例如算術運算的結果,CPU 會將結果寫回到寄存器或記憶體中,以便供後續指令使用。這也包括更新標誌位(flag),以反映指令的執行結果,例如比較指令的結果。
這些步驟構成了一個完整的機器週期,用於執行一條機器指令。不同的指令可能需要不同的週期數,具體取決於指令的複雜性和執行所需的操作。機器週期的速度通常以時脈頻率(Clock Frequency)來衡量,它表示每秒內CPU執行的週期數,以確定計算機的性能。
詳解
解取 解碼 執行 儲存
詳解
CPU 執行指令的一連串過程, 就是機器週期(Machine Cycle),
詳解
- CPU執行一個指令一連串過程
- 擷取 解碼 執行 回存
詳解
CPU Machine Cycle
Fetch Decode Execute Store