如何在8086中使用IMR屏蔽键盘中断?

时间:2015-05-20 16:58:34

标签: keyboard interrupt mask x86-16

我想通过在IMR中屏蔽它来禁用键盘中断。

我不确定如何访问它并更改它?

正如我所知,它在IRQ1线上,所以第1位应为0。

1 个答案:

答案 0 :(得分:1)

不,如果要屏蔽IRQ线,则必须设置该位。写一个零会解除它并启用它。

我猜测,因为这是在8086部分,你想控制一个8259兼容的基本PIC,而不是APIC。

假设PIC配置正确,您可以直接从其数据端口读取/写入IMR。对于第一个PIC,这将是0x21。

所以你需要做的就是读取PIC-1的当前IMR,改变bit-1并再次写入。

in al,0x21
or al,0x02
out 0x21,al