怎样调用 BIOS 函数?写 ISR?创建 TSR?
发布网友
发布时间:2022-08-26 01:04
我来回答
共2个回答
热心网友
时间:2024-12-14 08:37
调用方法如下:
函数原型:int bioskey (int cmd)
说明:bioskey()的函数原型在bios.h中
bioskey()完成直接键盘操作,cmd的值决定执行什么操作。
cmd = 0:
当cmd是0,bioskey()返回下一个在键盘键入的值(它将等待到按下一个键)。它返回一个16位的二进制数,包括两个不同的值。当按下一个普通键时,它的低8位数存放该字符的ASCII码,高8位存放该键的扫描码;对于特殊键(如方向键、F1~F12等等),低8位为0,高8位字节存放该键的扫描码。
cmd = 1:
当cmd是1,bioskey()查询是否按下一个键,若按下一个键则返回非零值,否则返回0。
cmd = 2:
当cmd是2,bioskey()返回Shift、Ctrl、Alt、ScrollLock、NumLock、CapsLock、Insert键的状态。各键状态存放在返回值的低8位字节中。
字节位 含义
0 右边Shift键状态
1 左边Shift键状态
2 Ctrl键状态
3 Alt键状态
4 ScrollLock键状态
5 NumLock键状态
6 CapsLock键状态
7 Insert键状态
字节位为1表示该键被按下,为0表示松开。
热心网友
时间:2024-12-14 08:37
这些都是针对某一特定系统的问题 (最可能的是运行 MS-DOS 的 PC 兼容机)。在针对系统的新闻组 comp.os.msdos.programmer 或它的 FAQ 里会取得更好的信息; 另一个很好的资源是 Ralf Brown 的中断列表。