2025-11-20 05:44:46
中断注册就是告诉CPU某个中断号对应哪个处理程序。就像给手机号码分配座机机位那样,中断号是电话区号,入口地址就是座机机位的详细地址。比如键盘按下时会产生中断号9,这时候就要在注册表里填好对应处理程序的地址。
为什么得这样注册呢?因为CPU处理中断时先看中断号,找到对应的中断向量表里的地址。比如中断号8对应向量表地址0x08,里面存着段地址和偏移地址。比如中断号8的话,入口地址可能存放在0x08的段里,偏移地址是0x1234,组合起来就是0x0801234。这样CPU才能准确找到处理程序。比如实模式下的中断向量表是1KB,每个中断号占4字节,所以中断号范围是0-255。比如现在电脑用保护模式,中断向量表会变成4KB,每个中断号占8字节,能支持更多中断类型。比如系统关机时触发中断21,这时候注册的入口地址就要执行关机代码。就像快递分拣,先看区号再找详细地址,中断注册就是给CPU这样的分拣规则。
本题链接: