割り込みベクタ 【interrupt vector】
概要
割り込みベクタ(interrupt vector)とは、CPUに発生する割り込み処理について、その種類と実行すべきコードのメモリ上の位置(アドレス)の対応関係を記録したもの。メモリ上の割り込みベクタテーブルと呼ばれる領域に格納される。CPUやマイコンには、プログラムの実行中に外部からの入出力要求などすぐに処理すべき案件が発生した際、プログラムの実行を一時中断して即座に要求された処理を行う「割り込み」(interrupt)という仕組みがある。
割り込みは要因に応じて固有の割り込み番号が割り当てられている。メモリ上には各割り込みを処理するための割り込みハンドラと呼ばれるプログラムが展開されており、割り込み番号と各プログラムの先頭のメモリアドレスが対応付けられてベクタテーブルに登録されている。
CPUは割り込み通知を受けるとベクタテーブルを参照して割り込みの種類に対応するルーチンを探し出し、現在のプログラムの実行状態を保存してルーチンの先頭アドレスに実行位置を移動する。ルーチンによる処理が終了したら元のプログラムの実行状態を復元して実行を再開する。
(2024.2.19更新)