2013年6月12日 星期三

機器循環週期

每當我們從鍵盤鍵入一個命令、資料或用滑鼠從畫面中選取某個選項之後,電腦系統為了執行此一命令或處理資料時,會先翻成電腦內部看得懂的機械語言指令(Machine Language Instruction)。而處理每一個機械語言指令時,資料會傳送或來自記憶體或輸入/輸出單元。如此每一次的傳送或接收的動作稱為機器週期(Machine Cycle)。機器週期又可分為兩部份:指令週期(Instruction cycleI-cycle)與執行週期(Execution cycleE-cycle)。
  在指令週期中,控制單元會從記憶單元取出下一待執行的指令。在執行週期(E-cycle)內所執行的工作包含:找出資料、執行指令,以及將結果存到累加器內,現在我們用圖2-3.4來表示之。
指令週期
  1. 控制單元從主記憶體中提取下一個所要執行的指令。
  2. 控制單元從指令予以解碼(decode)
  3. 控制單元將指令中用來說明要執行什麼動作的這一部份,存入指令暫存器
  4. 控制單元將指令中用來說明相關資料所儲存之位置這一部份,存入位址暫存器。
執行週期
  1. 控制單元根據位址暫存器內的資訊,從主記憶體中讀啟所需的資料,並將其存入ALU的儲存暫存器內。
  2. 控制單元根據指令暫存的資訊,命令ALU去執行所需的運算。
  3. ALU執行所需之運算,它會將發現於儲存暫存器以及累加器內的數值予以相加。
  4. 運算結果再存回累加器內,這個動作會清除累加器原先所儲存的數值。
image4.jpg (19223 個位元組)
        所有這些過程,看起來似乎是即冗長又令人厭煩,尤其是想到電腦可能要經過數千個、數百萬個,或者可能數十億個機器週期才能完成一個單一的程式時,就更不用提了。但事實上電腦完成這些機器週期的速度不但很快,而且是非常的快。就以速度最慢的電腦而言,其週期時間也是以毫秒(millisecond,千分之一秒)來衡量的。而有的電腦則以微秒(microsecond,百萬分之一秒)或皮秒(picosecond,兆分之一秒)來衡量的。
  不同類型的電腦會以不同的名詞來評量它們的速度。在微電腦界,其速度是用百萬赫(megahertz, MHz)這個單位來衡量的。每一個MHz表示每秒鐘有一百萬個時鐘脈衝。而最早的IBM PC其速度為4.77MHz,而今天的桌上型微電腦,其速度通常都在100MHz或以上。在大型電腦界,其速度是用mips(每一個mips代表million instructions per second ,表示每秒百萬指令)來衡量的;而在超級電腦界,則是用mflops(每一個mflops 代表million floating-point operations per second,每秒百萬浮點運算)來評量速度。
 

沒有留言:

張貼留言