获得键盘扫描码

获得键盘扫描码

ID:19911290

大小:62.50 KB

页数:4页

时间:2018-10-07

获得键盘扫描码_第1页
获得键盘扫描码_第2页
获得键盘扫描码_第3页
获得键盘扫描码_第4页
资源描述:

《获得键盘扫描码》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、获得键盘扫描码~教育资源库  概述:  在编制键盘输入程序时常常要用到一个键的扫描码或ASC码,如用到Foxpro的inkey()函数,以及用到BIOS的INT16H时,但找一个编码表不太容易,有时候找到的编码表又不全,无法查到组合键的编码,本程序就是一个随时用来显示按键的ASC码及扫描码的程序,可以用16进制和10进制同时显示一个键按下和放开的扫描码,以及ASC码,同样也支持组合键。这里是编译好的可执行文件:scancode.  在本程序中,查表的编程方法可用做参考,一般来说,如果程序有以下的结构:   ...   cmp  al,value1

2、   jz   offset1   cmp  al,value2   jz   offset2   cmp  al,value3   jz   offset3   ...  且要比较的值很多时,可以考虑查表的方法。程序改为以下结构后,修改起来很容易,可读性也大大增强了,如果要继续添加分支时,只需在表中加上一项就行。   ...table db  value1,value2,value3...table1dov  di,offsettable    mov  cx,table的长度    repnz scasb    jnz  not_found 

3、   dec  di    sub  di,offsettable    ;取出表的地址    mov  si,di    shl  si,1         ;x2    add  si,offsettable1    jmp  [si]         ;跳转到表中的地址    ...  源程序:;  Scancodeviep  installKEY_BUFF DB  ?      ;INT9H中按下一个键产生的扫描码KEY_BUFF1DB  ?      ;INT9H中松开一个键产生的扫描码AAH   DB  ?AAL   DB  ?D_C

4、OPYRIGHT  DB  <<ScanCodevie,_end,pgu,pgd,up,do;特殊键的说明字符串f1    db  'F1',0    ;f2    db  飓下一页友情提醒:,特别!;F2',0f3    db  'F3',0f4    db  'F4',0f5    db  'F5',0f6    db  'F6',0f7    db  'F7',0f8    db  'F8',0f9

5、    db  'F9',0f10   db  'F10',0f11   db  'F11',0f12   db  'F12',0bks   db  'BackSpace',0tab   db  'Table',0cap   db  'CapsLock',0lsh   db  'LeftShift',0ctr   db  'Ctrl',0alt   db  'Alt',0rsh   db 

6、 'RightShift',0ent   db  'Enter',0spa   db  'Space',0_ins   db  'Insert',0del   db  'Delete',0hom   db  'Home',0_end   db  'End',0pgu   db  'PageUp',0pgd   db  'PageDo   db  'NumLock',0_esc   db  '

7、;Esc',0PRINT_KEY  PROC    mov  bl,key_buff      ;取扫描码到BL    xor  bh,bh    mov  al,key_table[bx]   ;查扫描码表    cmp  al,'?'        ;如果为?则继续查特殊码表    jz  pk1pk0:    call prt_to_scr    retpk1:    mov  al,key_buff      ;在特殊码表内扫描    mov  di,offsetkey_table1    mov  cx,offs

8、etkey_table1_end-offsetkey_table1    repnz scasb    jnz  pk0    dec 

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。