割り込みベクターテーブル
読み:わりこみベクターテーブル
外語:interrupt vector table

 マイクロプロセッサーからの割り込みが発生した際に呼び出す割り込みハンドラー(ISR)を記載するための対応表。単に「ベクターテーブル」とも呼ぶ。
目次

概要
 大抵のマイクロプロセッサーは、初期状態ではアドレス0から始まり、ここにマイクロプロセッサーの仕様で規定される割り込みの番号順に呼び出すべき処理のアドレス又はジャンプ命令が書かれる。
 マイクロプロセッサーによっては、専用レジスターによって割り込みベクターの開始アドレスを変更することが出来るものもある。

特徴

x86
 従来の16ビットモード(リアルモード)では、アドレスは0x00000から固定で、0〜255の256個があり、各々2バイトのオフセットと2バイトのセグメントで計4バイト(32ビット)であるため、テーブルは計1024バイトである。
 4バイトのうち、+0 +1がオフセット、+2 +3がセグメント、各々リトルエンディアンで逆順に格納される。
 このうち0〜31の範囲はCPUのアーキテクチャーとして予約されているが、実際にはそれ以外の用途で使う実装が多く、衝突することがある。
 32ビットのプロテクトモードでは、アドレスは固定されず、割り込みディスクリプターテーブル(IDT)にあるゲートディスクリプターの配列により設定される。

ARM
 32ビットARMの場合、全8要因で1要因あたり4バイト(32ビット)であるため、テーブルは計32バイトである。
 原則として0x00000000から固定だが、一部0xFFFF0000からにできるものもある。

再検索