民國103年 第3梯次 數位電子甲級 學科

第75題

當有一微電腦系統重置後,雖然有中斷致能( E N I ) 指令,且中斷一直在發生,但C P U 卻只能 進入中斷服務程式一次,其可能發生的原因為

題目

當有一微電腦系統重置後,雖然有中斷致能( E N I ) 指令,且中斷一直在發生,但C P U 卻只能 進入中斷服務程式一次,其可能發生的原因為

  1. (1) 中斷致能指令不可再設
  2. (2) 中斷致能指令及中斷禁能指令應如P u s h / P u l l 般要對稱使用
  3. (3) 沒有正確的使用中斷返回指令
  4. (4) 未先執行中斷致能指令

官方答案

(3) 沒有正確的使用中斷返回指令

解析

中斷服務結束時必須使用中斷返回指令(如 8051 的 RETI、PIC 的 RETFIE),它在返回主程式之餘,還會清除中斷優先權/致能相關旗標,讓同等級或較低優先權的中斷能再次被服務。若誤用普通副程式返回指令 RET,只會彈回位址而不復原中斷狀態,中斷旗標或遮罩仍被鎖住,於是 CPU 只進入中斷一次,之後的中斷都被擋下。ENI 只是致能中斷,並非問題所在。

AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。

官方資料