c语言中的bioskey()

来源:百度知道 编辑:UC知道 时间:2024/05/21 18:01:42
这是一个程序的开头
#define LEFT 0x4b00
#define RIGHT 0x4d00
#define DOWN 0x5000
#define UP 0x4800
#define Esc 0x011b
0x4b00和下面的0x4d00等是什么意思?是ascii码吗?可怎么不一样啊,0x按16进制算,可按16进制算吗也不一样呀,这是怎么回事。多谢了
是什么编码,能说的更详细些吗?
是哪种类型的

bioskey()接收的是扫描码。
函 数 名: bioskey 头文件:bios.h
功 能: 直接使用BIOS服务的键盘接口(也可以理解为:读取键盘值)
用 法: int bioskey(int cmd);
输入参数:cmd=0 返回一个键盘值,如无键盘按下,一直等待。

cmd=1 查询键盘是否按下 0-无键按下,非0-有键按下。

cmd=2 返回控制键状态,返回值保存在低8位中。

#define NUM1 0x4f31 /* 小键盘区上数字键1 */
#define NUM2 0x5032 /* 小键盘区上数字键2 */
#define NUM3 0x5133 /* 小键盘区上数字键3 */
#define NUM4 0x4b34 /* 小键盘区上数字键4 */
#define NUM5 0x4c35 /* 小键盘区上数字键5 */
#define NUM6 0x4d36 /* 小键盘区上数字键6 */
#define NUM7 0x4737 /* 小键盘区上数字键7 */
#define NUM8 0x4838 /* 小键盘区上数字键8 */
#define NUM9 0x4939 /* 小键盘区上数字键9 */
#define NUMPNT 0x532e /* 小键盘区上 . 键 */
#define NUMADD 0x4e2b /* 小键盘区上 + 键 */
#define NUMSUB 0x4a2d /* 小键盘区上 - 键 */
#define NUMMUL 0x372a /* 小键盘区上 * 键 */
#define NUMDIV 0x352f /* 小键盘区上 / 键 */