汇编语言(王爽)17章键盘缓冲区

  1. cpu执行完int9之后,键盘输入放到了键盘缓冲区中。
  2. 键盘缓冲区有16个字单元,可以存储15个按键的扫描码和对应的ascii码
  3. 只有通码及相应ascii码会放入键盘缓冲区,断码不会
  4. 一个按键占一个字,高位字节放扫描码,低位字节放ascii码
  5. 控制键(shift、ctrl等)不会放入键盘缓冲区,但会改变状态字节的对应位
  6. int 16h;ah=0从键盘缓冲区读取一个键盘输入。返回:ah=扫描码,al=ascii码
  7. 调用int 16h的0号功能后,已读取的键盘输入从缓冲区删除
  8. 如果键盘缓冲区为空,则调用int 16h的0号功能会循环等待,直到有数据
  9. 字符串的输入显示、删除、回车结束等是利用栈来实现的

键盘缓冲区只关心按下过什么键,松开码标明按键松开,除了特殊控制键外,无须关注;按住不放,普通键会不停发送按键,即暂无需要输入按键时按住某字母键不放,很快就会滴滴鸣叫表示键盘缓冲区满,Ctrl 或 Shift类的,其按住与否有专门的查询方法(内存标记字段或中断功能调用查询)。 https://bbs.csdn.net/topics/395923342

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值