民國103年 第3梯次 數位電子甲級 學科
第75題
當有一微電腦系統重置後,雖然有中斷致能( E N I ) 指令,且中斷一直在發生,但C P U 卻只能 進入中斷服務程式一次,其可能發生的原因為
題目
當有一微電腦系統重置後,雖然有中斷致能( E N I ) 指令,且中斷一直在發生,但C P U 卻只能 進入中斷服務程式一次,其可能發生的原因為
- (1) 中斷致能指令不可再設
- (2) 中斷致能指令及中斷禁能指令應如P u s h / P u l l 般要對稱使用
- (3) 沒有正確的使用中斷返回指令
- (4) 未先執行中斷致能指令
官方答案
(3) 沒有正確的使用中斷返回指令
解析
中斷服務結束時必須使用中斷返回指令(如 8051 的 RETI、PIC 的 RETFIE),它在返回主程式之餘,還會清除中斷優先權/致能相關旗標,讓同等級或較低優先權的中斷能再次被服務。若誤用普通副程式返回指令 RET,只會彈回位址而不復原中斷狀態,中斷旗標或遮罩仍被鎖住,於是 CPU 只進入中斷一次,之後的中斷都被擋下。ENI 只是致能中斷,並非問題所在。
AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。