平成27年度 春期 午前Ⅱ 問1
プロセッサ
内部割込みの要因
内部割込みの要因として,適切なものはどれか。
- アDMA転送が完了した。
- イインターバルタイマが満了した。
- ウ演算がオーバフローした。
- エ電源電圧の低下を検出した。
答えと解説を見る
✓ これが正解ウ演算がオーバフローした。
解説
演算のオーバフローは、実行中の命令が原因なので内部割込みです。
割込みは、原因がCPUの外にあるか、実行中のプログラム自身にあるかで、外部割込みと内部割込みに分けられます。見分ける軸は、その事象を引き起こしたのが今実行している命令かどうかです。演算がオーバフローしたのは、実行中の命令の計算結果が表せる範囲を超えたためで、原因はプログラムの内側にあります。ゼロによる除算や不正な命令の実行と同じ仲間で、プログラム割込みとも呼ばれる内部割込みに当たります。ほかの三つは、周辺装置やタイマ、電源といったCPUの外の出来事が引き金です。原因が命令の実行結果にあるのか、外の装置の都合にあるのかを問うと仕分けられます。
ほかの選択肢はなぜ違うのか
- アDMA転送が完了した。:DMA転送の完了は、CPUを介さずにデータを運んでいた転送の仕組みが、仕事を終えたことを知らせるものです。CPUの外の装置から届く入出力割込みであり、外部割込みに分類されます。
- イインターバルタイマが満了した。:インターバルタイマの満了は、CPUとは別に時間を数えているタイマの回路が、設定した時間に達したことを知らせるものです。実行中の命令とは関係なく起きるので、外部割込みに当たります。
- エ電源電圧の低下を検出した。:電源電圧の低下は、ハードウェアの異常として検出される事象です。プログラムの命令が引き起こしたものではないため、内部割込みではなく外部割込みの側に入ります。
出典:平成27年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問1
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)