外中断、使用中断完成键盘输入和磁盘读写

导读:
外部中断有2种。x86通过Int 9获取键盘输入,int 16h访问键盘缓冲区,int 13h进行磁盘读写。

外中断

接口芯片和端口

在PC的主板和接口卡上装有各种接口芯片。CPU是不直接与外设交互数据的,都是通过端口完成数据交互以及控制。

外中断

中断分为两种:

  • 可屏蔽中断
    如果IF为1则响应可屏蔽中断。IF=0则屏蔽。
sti ; IF = 1
cli ; IF = 0
  • 不可屏蔽中断
    不可屏蔽中断固定中断类型号:2.所以在执行过程中由4步变为3步。

键盘输入

键盘产生了扫描码,扫描码一般送入60H中。
在键盘按键按下的时候获得通码,在按下松开的时候获得断码。
断码 = 通码 + 0x80h
键盘会产生Int 9, 输入的数据一般存在BIOS键盘缓冲区中(15个键盘输入)。一个键盘输入采用word存放,高字节是扫描码,低字节是字符码(产生和扫描码相对应的字符码)
int 16h, 中断例程读取键盘缓冲区。

磁盘读写

Int 13h 中断服务函数对磁盘进行读写。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猎羽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值