对于字母的ASCII码来说。网上已经罗列出来了,这是很容易就获取的,然后对于ctrl+字母的以及shift+字母的却有点小难了。
最近在写脚本的时候,需要用到一些组合键,但是苦于不知道这些组合键对应的键盘码,就很尴尬
CTRL+字母
ASCII码1,2,3…分别依次对应键盘按键的Ctrl+A键,Ctrl+B键,Ctrl+C键,…Ctrl+Z键的ASCII为26.参考大写字母后的编码,按键Ctrl+[键产生ASCII码27,Ctrl+\键产生ASCII码28,Ctrl+]键产生ASCII码29,Ctrl+^键产生ASCII码30。常用的控制字符有退格(8),制表符(9),换行(10).流量控制字符Xoff(17)和Xon(19),对应的按键分别是Ctrl+S,Ctrl+Q。
按照控制字符ASCII码于键盘按键的对应关系,在一个字符终端输入数据时,按下Ctrl+M与按下回车键的效果相同,应为回车的ASCII是13,M在字母表中排在第13位。同样按下Ctrl+J实际上是一个换行符,没有响应键盘按键对应。按下Ctrl+I与按下Tab键的效果相同,Ctrl+[与ESC相同。可以用Ctrl+H代替BackSpace键,在没有BackSpace的终端上,就是直接按Ctrl+H键。
ctrl+字母的ASCII码=字母的ASCII码&0x1f
最后分享一个小软件可以查看对应的按键码,
键盘各键对应的编码值(key code)
Key | Code |
---|---|
backspace | 8 |
tab | 9 |
enter | 13 |
shift | 16 |
ctrl | 17 |
alt | 18 |
pause/break | 19 |
caps lock | 20 |
escape | 27 |
page up | 33 |
page down | 34 |
end | 35 |
home | 36 |
left arrow | 37 |
up arrow | 38 |
right arrow | 39 |
down arrow | 40 |
insert | 45 |
delete | 46 |
0 | 48 |
1 | 49 |
2 | 50 |
3 | 51 |
4 | 52 |
5 | 53 |
6 | 54 |
7 | 55 |
8 | 56 |
9 | 57 |
a | 65 |
b | 66 |
c | 67 |
d | 68 |
Key | Code |
---|---|
e | 69 |
f | 70 |
g | 71 |
h | 72 |
i | 73 |
j | 74 |
k | 75 |
l | 76 |
m | 77 |
n | 78 |
o | 79 |
p | 80 |
q | 81 |
r | 82 |
s | 83 |
t | 84 |
u | 85 |
v | 86 |
w | 87 |
x | 88 |
y | 89 |
z | 90 |
left window key | 91 |
right window key | 92 |
select key | 93 |
numpad 0 | 96 |
numpad 1 | 97 |
numpad 2 | 98 |
numpad 3 | 99 |
numpad 4 | 100 |
numpad 5 | 101 |
numpad 6 | 102 |
numpad 7 | 103 |
Key | Code |
---|---|
numpad 8 | 104 |
numpad 9 | 105 |
multiply | 106 |
add | 107 |
subtract | 109 |
decimal point | 110 |
divide | 111 |
f1 | 112 |
f2 | 113 |
f3 | 114 |
f4 | 115 |
f5 | 116 |
f6 | 117 |
f7 | 118 |
f8 | 119 |
f9 | 120 |
f10 | 121 |
f11 | 122 |
f12 | 123 |
num lock | 144 |
scroll lock | 145 |
semi-colon | 186 |
equal sign | 187 |
comma | 188 |
dash | 189 |
period | 190 |
forward slash | 191 |
grave accent | 192 |
open bracket | 219 |
back slash | 220 |
close braket | 221 |
single quote | 222 |