Skip to the content.

最終更新日:2026年7月25日

まず結論

割込み(Interrupt)とは、実行中の処理をいったん中断して、優先して別の処理を行う仕組みです。

英語の interrupt は「割り込む」「中断させる」という意味です。

基本情報技術者試験では、まず次のように切り分けると分かりやすいです。

実行中のプログラムが原因
→ 内部割込み

タイマー・入出力装置・外部信号が原因
→ 外部割込み

「インターバルタイマーによって、指定時間経過時に生じる割込み」と出たら、外部割込み と判断します。

直感的な説明

CPUは、プログラムを順番に実行しています。

しかし、実行中でも、すぐ対応したいことが起きる場合があります。

例えば、

タイマーで一定時間が経過した
入出力装置から処理完了の通知が来た
計算中にゼロ除算が起きた
存在しないページへアクセスした

このようなとき、今の処理をいったん止めて、先に必要な処理を行います。

これが割込み(Interrupt)です。

ポイントは、割込みの原因がどこにあるか です。

プログラムの実行中に、そのプログラムが原因で起きる
→ 内部割込み

プログラムの外側から通知される
→ 外部割込み

定義・仕組み

割込みは、CPUが実行中の処理を一時停止し、割込みに対応する処理を行ってから、元の処理に戻る仕組みです。

大きく分けると、内部割込みと外部割込みがあります。

種類 原因
内部割込み 実行中のプログラムが原因 ゼロ除算、オーバーフロー、ページフォールト、ソフトウェア割込み
外部割込み 実行中のプログラム以外が原因 タイマー割込み、入出力装置からの通知、外部信号

内部割込み

内部割込みは、実行中のプログラムが原因で発生する割込みです。

例えば、次のような場合です。

0で割ろうとした
計算結果が表せる範囲を超えた
存在しないページへアクセスした
ソフトウェア割込み命令を実行した

これらは、実行中の命令やプログラムの動作がきっかけになっています。

外部割込み

外部割込みは、実行中のプログラム以外の原因で発生する割込みです。

例えば、次のような場合です。

タイマーで指定時間が経過した
入出力装置から処理完了の通知が来た
外部機器から信号が来た

インターバルタイマーは、CPU内部の計算ミスではなく、タイマーによる通知です。

そのため、外部割込みに分類されます。

公式の出題範囲やシラバスは、IPA:基本情報技術者試験 から確認できます。割込みは、CPUやOS、コンピュータシステムの基本動作と関係が深い内容です。

科目Aでどう出る?

科目Aでは、割込みの例から、内部割込みか外部割込みかを選ぶ問題が出やすいです。

選択肢を切るときは、原因を見ます。

問題文のキーワード 判断
インターバルタイマー、指定時間経過 外部割込み
入出力装置からの通知 外部割込み
オーバーフロー 内部割込み
ゼロによる除算 内部割込み
存在しないページへのアクセス 内部割込み
ソフトウェア割込み命令 内部割込み

例えば、次のように、

インターバルタイマーによって、指定時間経過時に生じる割込み

とあれば、タイマーが原因です。

実行中のプログラムの計算結果や命令エラーが原因ではないので、外部割込みです。

一方、

演算結果のオーバーフロー
ゼロによる除算

は、実行中のプログラムが原因なので内部割込みです。

どんな場面で使う?

OSや入出力処理、タスク制御の問題では、割込みの考え方が役立ちます。

例えば、次のような説明が出たときです。

  • 入出力処理が完了したのでCPUに知らせる
  • タイマーで一定時間ごとに処理を切り替える
  • 異常な命令実行を検出して例外処理を行う
  • ページフォールトが発生して必要なページを読み込む

このときは、まず次のように見ます。

外部からの通知か
プログラム実行中の異常か

外部からの通知なら外部割込み、プログラム実行中の異常なら内部割込みです。

よくある誤解・混同

一番混同しやすいのは、タイマー割込みを内部割込みだと思ってしまうことです。

混同しやすい点 正しい理解
タイマーはCPUが使うので内部割込み タイマー通知は実行中プログラムの原因ではないので外部割込み
ゼロ除算は外部から起きる ゼロ除算は実行中プログラムが原因なので内部割込み
ページフォールトはメモリの話なので外部割込み 存在しないページへのアクセスは実行中プログラムが原因なので内部割込み
ソフトウェア割込みは外部割込み ソフトウェア割込み命令の実行なので内部割込み

判断に迷ったら、次の一文で考えます。

実行中のプログラムが原因か?

原因がプログラム側にあれば内部割込みです。

原因がタイマーや入出力装置など、プログラムの外側にあれば外部割込みです。

まとめ(試験直前用)

  • 割込み(Interrupt)は、実行中の処理を一時中断して優先処理を行う仕組み
  • 実行中プログラムが原因なら 内部割込み
  • タイマー、入出力装置、外部信号が原因なら 外部割込み
  • ゼロ除算、オーバーフロー、ページフォールト、ソフトウェア割込みは内部割込み
  • インターバルタイマーによる指定時間経過は外部割込み

© 2024-2026 stemtazoo. All rights reserved.