Скан-коды клавиш клавиатуры (scan codes)
02.11.2021
10733
В закладкиСкан-код — числовой код, присвоенный каждой клавише в IBM-совместимых компьютерах, с помощью которого драйвер клавиатуры распознает, какая клавиша была нажата.
Название клавиши | DEC | HEX |
---|---|---|
Esc | 1 | 0x1 |
← Backspace | 14 | 0x0E |
Tab ↹ | 15 | 0x0F |
↵ Enter | 28 | 0x1C |
⇧ Shift левый | 42 | 0x2A |
⇧ Shift правый | 54 | 0x36 |
Ctrl левый | 29 | |
Ctrl правый | 285 | 0x11D |
Alt левый | 56 | 0x38 |
Alt правый | 312 | 0x138 |
⊞ Win левый | 91 | 0x5B |
⊞ Win правый | 92 | 0x5C |
⇪ Caps Lock | 58 | 0x3A |
Num Lock | 69 | 0x45 |
Scrol Lock | 70 | 0x46 |
Pause/Break | 69 | 0x45 |
Ctrl + Pause/Break | 326 | 0x146 |
End | 79 | 0x4F |
Home | 71 | 0x47 |
Пробел | 57 | 0x39 |
Page Up | 73 | 0x49 |
Page Down | 81 | 0x51 |
Clear | 76 | 0x4C |
← | 75 | 0x4B |
↑ | 72 | 0x48 |
→ | 77 | 0x4D |
↓ | 80 | 0x50 |
PrtSc | 311 | 0x137 |
Insert | 82 | 0x52 |
Delete | 83 | |
0 | 11 | 0xB |
1 | 2 | 0x2 |
2 | 3 | 0x3 |
3 | 4 | 0x4 |
4 | 5 | 0x5 |
5 | 6 | 0x6 |
6 | 7 | 0x7 |
7 | 8 | 0x8 |
8 | 9 | 0x9 |
9 | 10 | 0xA |
A | 30 | 0x1E |
B | 48 | 0x30 |
C | 46 | 0x2E |
D | 32 | 0x20 |
E | 18 | 0x12 |
F | 33 | 0x21 |
G | 34 | 0x22 |
H | 35 | 0x23 |
I | 23 | 0x17 |
J | 36 | 0x24 |
K | 37 | 0x25 |
L | 38 | 0x26 |
M | 50 | 0x32 |
N | 49 | 0x31 |
O | 24 | 0x18 |
P | 25 | 0x19 |
Q | 16 | 0x10 |
R | 19 | 0x13 |
S | 31 | 0x1F |
T | 20 | 0x14 |
U | 22 | 0x16 |
V | 47 | 0x2F |
W | 17 | 0x11 |
X | 45 | 0x2D |
Y | 21 | 0x15 |
Z | 44 | 0x2C |
Context Menu | 349 | 0x15D |
Numpad 0 | 82 | 0x52 |
Numpad 1 | 79 | 0x4F |
Numpad 2 | 80 | 0x50 |
Numpad 3 | 81 | 0x51 |
Numpad 4 | 75 | 0x4B |
Numpad 5 | 76 | 0x4C |
Numpad 6 | 77 | 0x4D |
Numpad 7 | 71 | 0x47 |
Numpad 8 | 72 | 0x48 |
Numpad 9 | 73 | 0x49 |
Numpad * | 55 | 0x37 |
Numpad + | 78 | |
Numpad - | 74 | 0x4A |
Numpad . (Del) | 83 | 0x53 |
Numpad / | 53 | 0x35 |
Numpad Enter | 284 | 0x11c |
F1 | 59 | 0x3B |
F2 | 60 | 0x3C |
F3 | 61 | 0x3D |
F4 | 62 | 0x3E |
F5 | 63 | 0x3F |
F6 | 64 | 0x40 |
F7 | 65 | 0x41 |
F8 | 66 | 0x42 |
F9 | 67 | 0x43 |
F10 | 68 | 0x44 |
F11 | 87 | 0x57 |
F12 | 88 | 0x58 |
F13 | 124 | 0x7C |
F14 | 125 | 0x7D |
F15 | 126 | 0x7E |
F16 | 127 | 0x7F |
F17 | 128 | 0x80 |
F18 | 129 | 0x81 |
F19 | 130 | 0x82 |
F20 | 131 | 0x83 |
F21 | 132 | 0x84 |
F22 | 133 | 0x85 |
F23 | 134 | 0x86 |
F24 | 135 | 0x87 |
; : | 39 | 0x27 |
- _ | 12 | 0x0C |
= + | 13 | 0x0D |
< , | 51 | 0x33 |
. > | 52 | 0x34 |
/ ? | 53 | 0x35 |
~ | 41 | 0x29 |
[ { | 26 | 0x1A |
] } | 27 | 0x1B |
' " | 40 | 0x28 |
| | 43 | 0x2B |
02.11.2021, обновлено 01.12.2021
10733
#Клавиатура
В закладкиДругие публикации
Как отследить нажатие клавиш JQuery?
В событиях – keydown(), keyup(), keypress() можно получить нажатые клавиши в шести свойствах. Получить их можно из…
Горячие клавиши Google Chrome
Список сочетаний клавиш, которые можно использовать в Google Chrome для Windows и MacOS.
код | это… Что такое Скан-код?
Скан-код — код, присвоенный каждой клавише, с помощью которого драйвер клавиатуры распознает, какая клавиша была нажата. При нажатии любой клавиши контроллер клавиатуры распознаёт клавишу и посылает её скан-код в порт 60h. При отпускании клавиши контроллер клавиатуры устаревшего формата IBM PC/XT посылает в тот же порт скан-код, увеличенный на 80h, а более нового формата IBM PC/AT — два байта: F0h и скан-код (скан-коды клавиатуры AT также отличаются от XT, см. таблицу). Некоторые клавиши генерируют не один, а несколько скан-кодов (так, правые ⇧ Shift , Alt , Ctrl , обе Win , а также Menu , Insert , Delete , Page Up , Page Down , Home , End , стрелки и все ACPI- и мультимедиа-клавиши генерируют два скан-кода, первый из которых — E0, клавиша PrtScr генерирует 4 скан-кода, а клавиша Pause — целых 6 скан-кодов). Каждый байт, записанный в порт 60h, генерирует аппаратное прерывание int 09h.
Скан-коды жёстко привязаны к каждой клавише на аппаратном уровне и не зависят ни от состояния индикаторов Caps Lock , Num Lock и Scroll Lock , ни от состояния управляющих клавиш ( ⇧ Shift , Alt , Ctrl ).
Скан-коды клавиш
Все скан-коды ниже даются в шестнадцатеричной системе.
Большинство скан-кодов на XT-клавиатуре соответствуют физическому местоположению клавиш, начиная с клавиш Esc (код 01) и цифровых клавиш 1-9 (коды 02-09). К примеру, клавиши второго ряда ( Tab ⇆ Q W E R T Y U I O P [ ] ↵ Enter ) имеют последовательные скан-коды 0F-1C (15-28 в десятичной системе).
Клавиша | Код нажатия XT | Код отпускания XT | Код нажатия AT | Код отпускания AT |
---|---|---|---|---|
Основная клавиатура | ||||
A | 1E | 9E | 1C | F0,1C |
B | 30 | B0 | 32 | F0,32 |
C | 2E | AE | 21 | F0,21 |
D | 20 | A0 | 23 | F0,23 |
E | 12 | 92 | 24 | F0,24 |
F | 21 | A1 | 2B | F0,2B |
G | 22 | A2 | 34 | F0,34 |
H | 23 | A3 | 33 | F0,33 |
I | 17 | 97 | 43 | F0,43 |
J | 24 | A4 | 3B | F0,3B |
K | 25 | A5 | 42 | F0,42 |
L | 26 | A6 | 4B | F0,4B |
M | 32 | B2 | 3A | F0,3A |
N | 31 | B1 | 31 | F0,31 |
O | 18 | 98 | 44 | F0,44 |
P | 19 | 99 | 4D | F0,4D |
Q | 10 | 90 | 15 | F0,15 |
R | 13 | 93 | 2D | F0,2D |
S | 1F | 9F | 1B | F0,1B |
T | 14 | 94 | 2C | F0,2C |
U | 16 | 96 | 3C | F0,3C |
V | 2F | AF | 2A | F0,2A |
W | 11 | 91 | 1D | F0,1D |
X | 2D | AD | 22 | F0,22 |
Y | 15 | 95 | 35 | F0,35 |
Z | 2C | AC | 1A | F0,1A |
0 | 0B | 8B | 45 | F0,45 |
1 | 02 | 82 | 16 | F0,16 |
2 | 03 | 83 | 1E | F0,1E |
3 | 04 | 84 | 26 | F0,26 |
4 | 05 | 85 | 25 | F0,25 |
5 | 06 | 86 | 2E | F0,2E |
6 | 07 | 87 | 36 | F0,36 |
7 | 08 | 88 | 3D | F0,3D |
8 | 09 | 89 | 3E | F0,3E |
9 | 0A | 8A | 46 | F0,46 |
~ | 29 | 89 | 0E | F0,0E |
- | 0C | 8C | 4E | F0,4E |
= | 0D | 82 | 55 | F0,55 |
\ | 2B | AB | 5D | F0,5D |
[ | 1A | 9A | 54 | F0,54 |
] | 1B | 9B | 5B | F0,5B |
; | 27 | A7 | 4C | F0,4C |
' | 28 | A8 | 52 | F0,52 |
, | 33 | B3 | 41 | F0,41 |
. | 34 | B4 | 49 | F0,49 |
/ | 35 | B5 | 4A | F0,4A |
← Backspace | 0E | 8E | 66 | F0,66 |
Space | 39 | B9 | 29 | F0,29 |
Tab ⇆ | 0F | 8F | 0D | F0,0D |
Caps Lock | 3A | BA | 58 | F0,58 |
Левый ⇧ Shift | 2A | AA | 12 | F0,12 |
Левый Ctrl | 1D | 9D | 14 | F0,14 |
Левый Alt | 38 | B8 | 11 | F0,11 |
Левый Win | E0,5B | E0,DB | E0,1F | E0,F0,1F |
Правый ⇧ Shift | 36 | B6 | 59 | F0,59 |
Правый Ctrl | E0,1D | E0,9D | E0,14 | E0,F0,14 |
Правый Alt | E0,38 | E0,B8 | E0,11 | E0,F0,11 |
Правый Win | E0,5C | E0,DC | E0,27 | E0,F0,27 |
Menu | E0,5D | E0,DD | E0,2F | E0,F0,2F |
↵ Enter | 1C | 9C | 5A | F0,5A |
Esc | 01 | 81 | 76 | F0,76 |
F1 | 3B | BB | 05 | F0,05 |
F2 | 3C | BC | 06 | F0,06 |
F3 | 3D | BD | 04 | F0,04 |
F4 | 3E | BE | 0C | F0,0C |
F5 | 3F | BF | 03 | F0,03 |
F6 | 40 | C0 | 0B | F0,0B |
F7 | 41 | C1 | 83 | F0,83 |
F8 | 42 | C2 | 0A | F0,0A |
F9 | 43 | C3 | 01 | F0,01 |
F10 | 44 | C4 | 09 | F0,09 |
F11 | 57 | D7 | 78 | F0,78 |
F12 | 58 | D8 | 07 | F0,07 |
PrtScr | E0,2A,E0,37 | E0,B7,E0,AA | E0,12,E0,7C | E0,F0,7C,E0,F0,12 |
Scroll Lock | 46 | C6 | 7E | F0,7E |
Pause | E1,1D,45, E1,9D,C5 | — | E1,14,77,E1,F0,14,F0,77 | — |
Insert | E0,52 | E0,D2 | E0,70 | E0,F0,70 |
Home | 47 | C1 | E0,6C | E0,F0,6C |
End | E0,4F | E0,CF | E0,69 | E0,F0,69 |
Page Up | E0,49 | E0,C9 | E0,7D | E0,F0,7D |
Page Down | E0,51 | E0,D3 | E0,7A | E0,F0,7A |
Delete | E0,53 | E0,D3 | E0,71 | E0,F0,71 |
↑ | E0,48 | E0,C8 | E0,75 | E0,F0,75 |
← | E0,4B | E0,CB | E0,6B | E0,F0,6B |
↓ | E0,50 | 50,D0 | E0,70 | E0,F0,70 |
→ | E0,4D | E0,CD | E0,74 | E0,F0,74 |
Цифровая клавиатура | ||||
Num Lock | 45 | C5 | 77 | F0,77 |
/ | E0,35 | E0,B5 | E0,4A | E0,F0,4A |
* | 37 | B7 | 7C | F0,7C |
- | 4A | CA | 7B | F0,7B |
+ | 4E | CE | 79 | F0,79 |
↵ Enter | E0,1C | E0,9C | E0,5A | E0,F0,5A |
. | 53 | D3 | 71 | F0,71 |
0 | 52 | D2 | 70 | F0,70 |
1 | 4F | CF | 69 | F0,69 |
2 | 50 | D0 | 72 | F0,72 |
3 | 51 | D1 | 7A | F0,7A |
4 | 4B | CB | 6B | F0,6B |
5 | 4C | CC | 73 | F0,73 |
6 | 4D | CD | 74 | F0,74 |
7 | 47 | C7 | 6C | F0,6C |
8 | 48 | C8 | 75 | F0,75 |
9 | 49 | C9 | 7D | F0,7D |
Клавиши ACPI | ||||
Power | E0,5E | E0,DE | E0,37 | E0,F0,37 |
Sleep | E0,5F | E0,DF | E0,3F | E0,F0,3F |
Wake | E0,63 | E0,E3 | E0,5E | E0,F0,5E |
Мультимедиа клавиши | ||||
Управление проигрывателем | ||||
Следующий трек | E0,19 | E0, 99 | E0, 4D | E0,F0,4D |
Предыдущий трек | E0,10 | E0, 90 | E0,15 | E0,F0,15 |
Остановить | E0,24 | E0,A4 | E0,3B | E0,F0,3B |
Проигрывать/пауза | E0,22 | E0,A2 | E0,3B | E0,F0,3B |
Звук вкл/откл | E0,20 | E0,A0 | E0,23 | E0,F0,23 |
Увеличить громкость | E0,30 | E0,B0 | E0,32 | E0,F0,32 |
Уменьшить громкость | E0,2E | E0,AE | E0,21 | E0,F0,21 |
Управление браузером | ||||
Поиск | E0,65 | E0,E5 | E0,10 | E0,F0,10 |
Домашняя страница | E0,32 | E0,B2 | E0,3A | E0,F0,3A |
Назад | E0,6A | E0,EA | E0,38 | E0,F0,38 |
Вперед | E0,69 | E0,E9 | E0,30 | E0,F0,30 |
Стоп | E0,68 | E0, E8 | E0,28 | E0,F0,28 |
Обновить | E0,67 | E0,E7 | E0,F0,20 | E0,F0,20 |
Закладки | E0,66 | E0, E6 | E0,18 | E0,F0,18 |
Управление приложениями | ||||
Media Select | E0,6D | E0,ED | E0,50 | E0,F0,50 |
Электронная почта | E0,6C | E0,EC | E0,48 | E0,F0,48 |
Калькулятор | E0,21 | E0,A1 | E0,2B | E0,F0,2B |
Мой компьютер | E0,6B | E0,EB | E0,40 | E0,F0,40 |
Cм.
также- ASCII
Ссылки
- Непосредственная работа с клавиатурой RSDN
- Keyboard Scan Codes (XT)
- Keyboard Scan Codes (AT)
- Стандартная клавиатура. Описание
- Скан-коды клавиатуры
кодов сканирования клавиатуры
кодов сканирования клавиатурыInquisit записывает скан-код ответа субъекта в столбце ответа. файла данных. Каждая клавиша на клавиатуре имеет один уникальный скан-код, заданный в таблице ниже.
Код сканирования | Ключ клавиатуры |
---|---|
1 | ЭСК |
2 | 1 |
3 | 2 |
4 | 3 |
5 | 4 |
6 | 5 |
7 | 6 |
8 | 7 |
9 | 8 |
10 | 9 |
11 | 0 |
12 | – |
13 | = |
14 | бс |
15 | Вкладка |
16 | Вопрос |
17 | В |
18 | Е |
19 | Р |
20 | Т |
21 | Y |
22 | У |
23 | я |
24 | О |
25 | Р |
26 | [ |
27 | ] |
28 | Введите |
29 | CTRL |
30 | А |
31 | S |
32 | Д |
33 | Ф |
34 | Г |
35 | Н |
36 | Дж |
37 | К |
38 | Л |
39 | ; |
40 | |
41 | ` |
42 | левшифт |
43 | \ |
44 | Z |
45 | Х |
46 | С |
47 | В |
48 | Б |
49 | № |
50 | М |
51 | , |
52 | . |
53 | / |
54 | РШифт |
55 | ПТС |
56 | Вариант |
57 | Космос |
58 | Колпачки |
59 | F1 |
60 | F2 |
61 | F3 |
62 | F4 |
63 | F5 |
64 | F6 |
65 | F7 |
66 | F8 |
67 | F9 |
68 | F10 |
69 | Номер |
70 | Свиток |
71 | Главная (7) |
72 | Вверх (8) |
73 | ПгВп (9) |
74 | – |
75 | Левый (4) |
76 | Центр (5) |
77 | Право (6) |
78 | + |
79 | Конец (1) |
80 | Вниз (2) |
81 | ПГДн (3) |
82 | Инс |
83 | Дел |
Коды сканирования клавиатуры
Коды сканирования клавиатуры[Предыдущая][Вверх] | Ссылка на блок «клавиатура» (#rtl) |
Специальные физические ключи кодируются скан-кодами DOS для этих ключей во втором байте типа TKeyEvent. Полный список кодов сканирования можно найти в таблице ниже. Это список ключей, которые используются механизмом перевода ключевых событий по умолчанию. При написании драйвера клавиатуры либо эти константы должны возвращаться различными функциями обработки событий клавиш, либо драйвером должен быть реализован хук TranslateKeyEvent .
Код | Ключ | Код | Ключ | Код | Ключ |
---|---|---|---|---|---|
00 | Нет ключа | 3D | Ф3 | 70 | ALT-F9 |
01 | ALT-Esc | 3Е | Ф4 | 71 | АЛЬТ-Ф10 |
02 | ALT-Пробел | 3F | Ф5 | 72 | CTRL-PrtSc |
04 | CTRL-Ins | 40 | Ф6 | 73 | CTRL-Влево |
05 | SHIFT-Ins | 41 | Ф7 | 74 | CTRL-вправо |
06 | CTRL-Del | 42 | Ф8 | 75 | CTRL-конец |
07 | SHIFT-Del | 43 | Ф9 | 76 | CTRL-PgDn |
08 | ALT-Назад | 44 | Ф10 | 77 | CTRL-Дом |
09 | ALT-SHIFT-Назад | 47 | Дом | 78 | АЛЬТЕР-1 |
0F | SHIFT-вкладка | 48 | Вверх | 79 | АЛЬТ-2 |
10 | АЛЬТ-Q | 49 | ПгВп | 7А | АЛЬТЕР-3 |
11 | АЛЬТ-В | 4Б | Левый | 7Б | АЛЬТЕР-4 |
12 | АЛЬТ-Е | 4С | Центр | 7С | АЛЬТЕР-5 |
13 | АЛЬТ-Р | 4Д | справа | 7Д | АЛЬТЕР-6 |
14 | АЛЬТ-Т | 4Е | АЛЬТ-ГрейПлюс | 7Е | АЛЬТЕР-7 |
15 | АЛЬТ-Y | 4F | конец | 7Ф | АЛЬТЕР-8 |
16 | АЛЬТ-У | 50 | Вниз | 80 | АЛЬТЕР-9 |
17 | АЛЬТ-И | 51 | ПГДН | 81 | АЛЬТЕР-0 |
18 | АЛЬТ-О | 52 | Инс | 82 | ALT-минус |
19 | АЛЬТ-П | 53 | Дел | 83 | ALT-равно |
1А | ALT-LftBrack | 54 | SHIFT-F1 | 84 | CTRL-PgUp |
1Б | ALT-RgtBrack | 55 | SHIFT-F2 | 85 | Ф11 |
1Е | АЛЬТ-А | 56 | SHIFT-F3 | 86 | Ф12 |
1F | АЛЬТ-С | 57 | SHIFT-F4 | 87 | SHIFT-F11 |
20 | АЛЬТ-Д | 58 | SHIFT-F5 | 88 | SHIFT-F12 |
21 | АЛЬТ-Ф | 59 | SHIFT-F6 | 89 | CTRL-F11 |
22 | АЛЬТ-Г | 5А | SHIFT-F7 | 8А | CTRL-F12 |
23 | АЛЬТ-Х | 5Б | SHIFT-F8 | 8Б | АЛЬТ-Ф11 |
24 | АЛЬТ-ДЖ | 5С | SHIFT-F9 | 8С | АЛЬТ-Ф12 |
25 | АЛЬТ-К | 5Д | SHIFT-F10 | 8Д | CTRL-Вверх |
26 | АЛЬТЕР-Л | 5Е | CTRL-F1 | 8Е | CTRL-минус |
27 | АЛЬТ-Полуколь | 5F | CTRL-F2 | 8F | CTRL-Центр |
28 | ALT-Цитата | 60 | CTRL-F3 | 90 | CTRL-GreyPlus |
29 | ALT-OpQuote | 61 | CTRL-F4 | 91 | CTRL-Вниз |
2Б | ALT-BkSlash | 62 | CTRL-F5 | 94 | CTRL-вкладка |
2С | АЛЬТ-З | 63 | CTRL-F6 | 97 | АЛЬТ-Дом |
2D | АЛЬТ-Х | 64 | CTRL-F7 | 98 | АЛЬТ-Вверх |
2Е | АЛЬТ-С | 65 | CTRL-F8 | 99 | ALT-PgUp |
2F | АЛЬТ-В | 66 | CTRL-F9 | 9Б | ALT-Левый |
30 | АЛЬТ-Б | 67 | CTRL-F10 | 9Д | ALT-Право |
31 | АЛЬТЕР-Н | 68 | АЛЬТ-Ф1 | 9Ф | ALT-конец |
32 | АЛЬТ-М | 69 | АЛЬТ-Ф2 | А0 | ALT-вниз |
33 | ALT-запятая | 6А | АЛЬТ-Ф3 | А1 | ALT-PgDn |
34 | ALT-Период | 6Б | ALT-F4 | А2 | ALT-Ins |
35 | ALT-слеш | 6С | ALT-F5 | А3 | ALT-Del |
37 | ALT-СерыйAst | 6Д | ALT-F6 | А5 | ALT-вкладка |
3Б | Ф1 | 6Е | ALT-F7 | ||
3С | Ф2 | 6F | ALT-F8 |
Список кодов сканирования для специальных клавиш и комбинаций с клавишами SHIFT, ALT и CTRL можно найти в следующей таблице: Они предназначены только для быстрого ознакомления.