Материал из РУВИКИ — свободной энциклопедии

Компьютерная клавиатура

Клавиатура IBM Model M

Компью́терная клавиату́ра — устройство, позволяющее пользователю вводить информацию в компьютер (устройство ввода). Представляет собой набор клавиш (кнопок), расположенных в определённом порядке.

История[править | править код]

Видеотерминал ADM-3A — таким пользовался Билл Джой, когда разрабатывал текстовый редактор vi

Первые компьютеры клавиатуры не имели: данные вводились в компьютер либо установкой механических переключателей и проводов, либо с помощью перфокарт (пример — ENIAC). По мере повышения производительности электронно-вычислительных машин (ЭВМ), а особенно с появлением режима разделения времени появилась необходимость вводить команды, не прерывая работу машины. Одним из первых экспериментов по непосредственному взаимодействию с компьютером с помощью клавиатуры был проведён в 1956 году в Массачусетском технологическом институте. Дуглас Росс предложил подключить к компьютеру «Whirlwind» электрическую пишущую машинку «Flexowriter[en]», эксперимент сочли удачным[1].

Первоначально для ввода текстовых данных в компьютер использовались электромеханические телетайпы, позже их сменили специализированные видеотерминалы. В таком терминале клавиатура являлась его частью, даже если выполнялась в отдельном корпусе. Никаких стандартов как по электрической части, так и по составу и расположению кнопок не было. Такие терминалы могли иметь отдельные клавиши для управления курсором, прокрутки текста на экране или подачи управляющих сигналов.

Клавиатура Symbolics LM-2 «space-cadet» со множеством управляющих клавиш и клавиш-модификаторов, специфичных для этой машины. Под эту клавиатуру писался редактор Emacs
Клавиатура Macintosh 128K

С появлением мини- и микрокомпьютеров клавиатура могла подключаться непосредственно к компьютеру. Однако эти клавиатуры также не были законченными универсальными устройствами: они подключались, напрямую или через согласующие устройства, к портам компьютера, на нажатие клавиш либо генерировалось прерывание, либо загруженная в компьютер программа периодически производила опрос матрицы клавиш. Компьютеры разных архитектур использовали уникальные, несовместимые друг с другом клавиатуры. У некоторых компьютеров, преимущественно одноплатных, таких как ZX80, клавиатура располагалась на корпусе, у других — соединялась многожильным кабелем с системным блоком. Некоторые клавиатуры содержали минимум клавиш — алфавитно-цифровые, Enter и несколько управляющих. Другие, как space-cadet для лисп-машин MIT, содержали большое количество управляющих клавиш, специфичных для данной архитектуры. Также стали появляться функциональные клавиши, не имевшие предопределённого назначения. Проводились эксперименты по использованию аккордных клавиатур.

83-клавишная «XT»-клавиатура

Единый стандарт клавиатуры, как и многие другие стандарты компьютерного оборудования, связан с компьютером IBM PC. Первая версия клавиатуры для IBM PC, так называемая «XT-клавиатура» заметно отличалась от последующих как по раскладке, так и по протоколу обмена с компьютером: на ней было 83 клавиши (из них 10 — функциональных), отсутствовали индикаторы режимов ввода. В 1984 году вместе с компьютером IBM PC/AT появился и новый, получивший в дальнейшем широкое распространение стандарт клавиатуры — протокол обмена стал двусторонним, что позволило разместить над цифровым блоком три светодиодных индикатора режима ввода. Однако раскладка изменилась незначительно: была добавлена клавиша SysRq, цифровой блок был отделён от основного буквенно-цифрового, некоторые клавиши были перенесены на другие места. Несмотря на внешнее сходство и использование одинакового разъёма DIN, новая клавиатура была несовместима с прежними моделями компьютеров IBM PC и IBM PC/XT — для подключения к ним у некоторых клавиатур был специальный переключатель. Следующее поколение клавиатур началось с представления в 1986 году клавиатуры «Model M», имевшей в зависимости от локализации от 101 (в американской раскладке) до 106 (в японской) клавиш, и ставшей стандартом. Дальнейшее развитие клавиатур шло от модели «Model M»: порт подключения был заменён на PS/2 и USB, были добавлены клавиши Windows и меню, на некоторых — мультимедийные клавиши. В ноутбуках и на компактных клавиатурах расположение клавиш может отличаться; некоторые клавиши могут быть доступны с помощью модификатора Fn, но большинство компьютеров использует клавиатуру, произошедшую от компьютеров IBM PC, за исключением клавиатур от Apple и клавиатур от специализированных рабочих станций, наподобие терминалов Блумберга.

~
` Ё
!
1
@ "
2
#
3
$ ;
4
%
5
^:
6
& ?
7
*
8
(
9
)
0
_
-
+
=
/
*
-
Q
Й
W
Ц
E
У
R
К
T
Е
Y
Н
U
Г
I
Ш
O
Щ
P
З
{
[ Х
}
] Ъ
7
Home
8
9
PgUp


+
A
Ф
S
Ы
D
В
F
_ А
G
П
H
Р
J
_ О
K
Л
L
Д
:
; Ж
"
' Э
|/
\
4
5
6
| /
\
Z
Я
X
Ч
C
С
V
М
B
И
N
Т
M
Ь
<
, Б
>
. Ю
?,
/.
1
End
2
3
PgDn
0
Ins
.
Del

Устройство[править | править код]

Мембрана плёночной клавиатуры с дорожками и контактными площадками

В большинстве компьютерных клавиатур контакты клавиш соединены в матрицу. Контроллер клавиатуры последовательно подаёт потенциал на ряды клавиш и по появлению сигнала на выходном шлейфе распознаёт, какая клавиша нажата. Нажатие трёх клавиш, одна из которых находится на пересечении дорожек, ведущих к двум другим клавишам, приводит к регистрации фантомного нажатия четвёртой. В недорогих клавиатурах производится оптимизация разводки с целью не допустить подобных случаев для наиболее распространённых сочетаний, а в неоднозначных случаях нажатие третьей клавиши игнорируется. Более дорогие клавиатуры могут иметь на каждой клавише диод[2].

Наиболее распространённый тип клавиатур — мембранные с резиновыми толкателями, служащими одновременно и для создания усилия нажатия на мембрану и возврата после отпускания клавиши. Более дорогие модели могут использовать подпружиненные металлические контакты, герконы или ёмкостные сенсоры.

Способы связи клавиатуры с компьютером[править | править код]

  • Непосредственное подключение матрицы к процессору — применялось в микрокомпьютерах 1970-80-х. Опросом матрицы занимался процессор, периодически прерывая работу текущей программы. Достоинства такого подхода — дешевизна и максимальная гибкость, возможно например опрашивать не всю матрицу. Недостатки: трата процессорного времени на опрос клавиатуры; необходимость подключения клавиатуры многопроводным шлейфом; несовместимость клавиатур разных моделей компьютеров. Примеры компьютеров с такой клавиатурой: ZX-Spectrum, Commodore PET.
  • Передача ASCII-символа — применялась в терминалах и некоторых компьютерах 1970-80-х. Процессор освобождён от опроса клавиатуры, этим занимается специальный контроллер. Этот контроллер возвращает ASCII-код символа исходя из нажатой клавиши и положения клавиш-модификаторов. Такой способ требует меньше нагрузки на процессор, чем предыдущий, но нет возможности считывать состояние клавиш-модификаторов, определить, нажата ли та или иная клавиша в текущий момент, а также ограничивает использование сочетаний клавиш. Кроме того, раскладка такой клавиатуры задана жёстко, для переключения раскладки требуется внесение изменений в схему контроллера. Примеры компьютеров с такой клавиатурой: Apple II, БК-0010.
  • Передача скан-кода — наиболее распространённый способ с появлением IBM PC. В этом случае опросом также занимается контроллер клавиатуры, например для PC (PS/2)-клавиатур аналогичный Intel 8042[3]. Однако каждой клавише, в том числе клавишам-модификаторам, присваивается собственный скан-код, не соотносящийся напрямую с кодом символа ASCII. При нажатии или отпускании клавиши передаётся этот скан-код и признак нажатия/отпускания. Сопоставление скан-кода с кодом символа производится программным обеспечением самого компьютера. Данный подход совмещает достоинства двух предыдущих.

Группы клавиш[править | править код]

Клавиатура, соответствующая стандарту PC/AT. 104 клавиши расположены согласно раскладке QWERTY

По своему назначению клавиши на клавиатуре условно делятся на основные группы[источник не указан 844 дня]:

Дополнительные группы:

Некоторое количество (в PC/AT-клавиатуре — двенадцать) функциональных клавиш расположено в верхнем ряду клавиатуры. Ниже располагается блок алфавитно-цифровых клавиш. Правее этого блока находятся клавиши управления курсором, а у самого правого края клавиатуры — цифровая панель, которая может выполняться съёмной.

Буквенно-цифровой блок[править | править код]

Буквенно-цифровые клавиши также именуются алфавитно-цифровыми клавишами, клавишами данных, клавишами для ввода данных. Основу этого блока составляет набор символов, аналогичный набору символов пишущей машинки. Обычно к одной клавише данных привязано несколько букв, цифр, знаков препинания и символов. Какая будет введена буква, определяется заданным регистром клавиатуры — режимом работы клавиатуры, установленным клавишами управления или клавишами переключения регистра.[4][5]

К алфавитно-цифровому блоку относятся клавиши для ввода букв, цифр, знаков пунктуации и символов основных арифметических операций, а также специальных символов. В стандартной клавиатуре PC/AT этот блок включает в себя 47 клавиш. Для некоторых языков, где число букв в алфавите больше 26, производители клавиатур выпускают клавиатуры с дополнительными клавишами в алфавитно-цифровом блоке — например, на клавиатурах для украинского языка (33 буквы) их уже 48 (см.: Украинская раскладка клавиатуры). Для русского алфавита с его 33 буквами специальные клавиатуры не производятся — все буквы русского алфавита размещены на клавишах стандартной клавиатуры PC/AT.

Клавиши алфавитно-цифрового блока делятся по рядам и по зонам.[источник не указан 3910 дней] Нижний ряд блока находится над клавишей «пробел» и клавишами-модификаторами Ctrl, Alt, AltGr. Он считается первым. Выше — второй, в методе слепой десятипальцевой печати также называемый «домашним» рядом[источник не указан 3910 дней]. Ещё выше — третий. Самый верхний ряд клавиш блока — четвёртый — в латинской раскладке QWERTY не содержит клавиш для ввода букв, но включает все клавиши ввода цифр. По этой причине его часто называют цифровым рядом[источник не указан 3910 дней].

Для большего удобства набора текста поверхность клавиш может располагаться не в одной плоскости, а по дуге. В некоторых клавиатурах, например «IBM Model M», или некоторых клавиатурах с раздельными зонами левой и правой руки, используется изогнутая плата, но гораздо чаще используются клавиши разной высоты. Наиболее распространённая разновидность профиля клавиш известна также, как OEM-профиль. Недостаток такого подхода в том, что клавиши из разных рядов невзаимозаменяемы. Кроме того, обе технологии невозможно применять в ноутбуках и низкопрофильных ножничных клавиатурах.

Зоной называется совокупность клавиш, закреплённых в методе слепой десятипальцевой печати за пальцами каждой из рук. Нумерация зон идёт слева направо.[источник не указан 3910 дней]

Результат действия алфавитно-цифровых клавиш зависит от регистра (нижний или верхний) и уровня (первый или второй), в котором осуществляется нажатие этих клавиш.

Клавиши управления[править | править код]

Клавиши управления (англ. control keys) предназначены для выполнения определённых действий, могут использоваться отдельно или в сочетании с другими клавишами[4], включают следующие клавиши: Esc, Tab ↹, Ctrl, Alt, ← Backspace, ↵ Enter, PrtSc, Ins, Num Lock, Del, Scroll Lock, Break[6], ⊞ Win[4].

Клавиши-модификаторы

Нажатие одновременно нескольких клавиш, при котором результат (вводимый символ или выполняемая команда) отличается от суммарного значения нажатых клавиш, называется сочетанием клавиш или комбинацией клавиш. Как правило, сочетания клавиш используют клавиши-модификаторы — клавиши, предназначенные для использования именно в составе сочетаний: Shift, Ctrl, Alt, AltGr (правая Alt) и ⊞ Win. Включение верхнего регистра клавиш (при отключённом ⇪ Caps Lock) осуществляется нажатием и удержанием клавиши ⇧ Shift. Нажатие и удержание клавиши AltGr используется для перехода на второй уровень клавиатуры.

Клавиши системных команд

К клавишам системных команд относятся следующие клавиши: SysRq, Esc, PrtSc, Pause, Break, ≣ Menu.

Функциональные клавиши[править | править код]

В верхней части клавиатуры стандарта PC/AT располагается блок так называемых функциональных клавиш — клавиши от F1 до F12. На клавиатурах компьютеров PC/XT было 10 функциональных клавиш (от F1 до F10), расположенных в два столбца в левой части клавиатуры. Назначение (функции) функциональных клавиш определяется в зависимости от системного или прикладного ПО: после включения компьютера — программой конфигурации материнской платы (Setup BIOS), а в последующем — запущенной операционной системой.

Назначение (функции) отдельных функциональных клавиш, комбинации функциональных клавиш с клавишами Shift, Ctrl и Alt и «обычными» клавишами составляют часть интерфейса пользователя и, как правило, являются постоянными для отдельно взятого вида ПО. Существует ряд универсальных назначений, применяемых наиболее широко: зачастую при нажатии клавиши F1 на экран выводится встроенный справочник по программе (часто уже открытый на странице, соответствующей режиму программы, в котором она находится), а нажатие клавиши ESC приводит к прерыванию текущей операции.

Цифровая клавиатура[править | править код]

Цифровой блок клавиатуры содержит 17 клавиш, аналогичных применяемым в калькуляторах, кассовых аппаратах и тому подобном. Основное назначение клавиш блока цифровой клавиатуры — дублирование функций клавиш алфавитно-цифрового блока в части ввода цифр и символов основных арифметических операций. Считается, что клавиши цифрового блока более удобны для ввода цифр и знаков арифметических операций, нежели клавиши алфавитно-цифрового блока. При отключённом Num Lock клавиши цифрового блока дублируют клавиши управления курсором.

Специализированные клавиши[править | править код]

Мультимедийные клавиши[править | править код]

Мультимедийная компьютерная клавиатура, оснащённая клавишами для изменения громкости звука и для выполнения других действий

Многие современные компьютерные клавиатуры помимо стандартного набора из 104 клавиш снабжаются дополнительными клавишами (как правило, другого размера и формы), которые предназначены для управления некоторыми основными функциями компьютера:

  • для управления громкостью звука: громче, тише, включить или выключить звук;
  • для управления лотком в приводе для компакт-дисков: извлечь диск, принять диск;
  • для управления проигрывателем: воспроизводить, поставить на паузу, остановить воспроизведение, промотать запись вперёд или назад, перейти к следующей или предыдущей записи;
  • для управления сетевыми возможностями компьютера: открыть почтовую программу, открыть браузер, показать домашнюю страницу, двигаться вперёд или назад по истории посещённых страниц, открыть поисковую систему;
  • для запуска часто используемых программ: открыть калькулятор, открыть файловый менеджер;
  • для управления состоянием окон операционной системы: свернуть окно, закрыть окно, перейти к следующему или к предыдущему окну;
  • для управления состоянием компьютера: перевести в ждущий режим, перевести в спящий режим, пробудить компьютер, выключить компьютер.

Так как многие из этих функций (управление звуком и воспроизведением звукозаписей, управление компакт-дисками и т. п.) относятся к сфере мультимедиа, то такие клавиатуры часто называются «мультимедийными клавиатурами».

Фирменные драйверы таких клавиатур, как правило, не предоставляют пользователям возможности управлять назначением большинства дополнительных клавиш (кроме, возможно, специальной группы «пользовательских клавиш»), а также не дают возможности определять дополнительные сочетания, состоящие из нескольких клавиш (с участием мультимедийных) и назначать им новые специальные функции. Однако эта проблема может быть решена при помощи независимых универсальных драйверов от сторонних разработчиков.

Программируемые клавиатуры[править | править код]

Существуют клавиатуры, для которых можно переназначить любую клавишу произвольным образом: не только поставить в соответствие любой клавише тот или иной скан-код, но и назначить макросы[7], и даже динамически изменять обозначение на клавише, для чего в такие клавиши встраиваются миниатюрные дисплеи — OLED или жидкокристаллические[8]. Большинство подобных клавиатур позиционируются как игровые.

Компактные клавиатуры[править | править код]

С целью экономии места на рабочем столе или для того, чтобы уместить клавиатуру на устройстве, на котором полноразмерная клавиатура не может поместиться, производители клавиатур могут располагать клавиши на клавиатуре в не стандартном порядке или удалять клавиши с клавиатуры. Компактные программируемые клавиатуры популярны, например, среди геймеров и системных администраторов, так как такую клавиатуру легче носить с собой. Наиболее популярные форматы компактных клавиатур:

  • 80 % или TKL (от англ. tenkeyless — буквально «без десяти клавиш») — клавиатура стандартной раскладки без цифрового блока. Цифровой блок также может эмулироваться в пределах основной буквенно-цифровой клавиатуры при включении режима NumLock;
  • 75 % — распространённый на ноутбуках формат, при котором клавиши Home, End, PgUp и PgDown могут либо располагаться в один столбец по правому краю клавиатуры, либо эмулироваться через клавишу Fn совместно с курсорными клавишами. Малоиспользуемые клавиши (Scroll Lock, Pause, Insert), как правило, тоже эмулируются;
  • 60 % — формат, при котором клавиатуры состоят исключительно из буквенно-цифрового блока, клавиш-модификаторов, клавиш Esc, Enter и Backspace. Все остальные клавиши (F1-F12, стрелки и другие) эмулируются с помощью клавиши Fn. Наиболее известный представитель — Happy Hacking Keyboard.

Примечания[править | править код]

  1. Timeline of Computer History: 1956. Computer History Museum. Дата обращения: 29 октября 2021. Архивировано 23 сентября 2015 года.
  2. Dave Dribin: Keyboard Matrix Help. Дата обращения: 5 августа 2018. Архивировано 28 июня 2018 года.
  3. В.А. Авдеев, В.Ф. Гузик. Компьютеры: шины, контроллеры, периферийные устройства. — Таганрог : ТРТУ, 2001.
  4. 1 2 3 Использование клавиатуры. Справка Windows. support.microsoft.com. Дата обращения: 17 декабря 2016. Архивировано 20 декабря 2016 года.
  5. С. И. Адян. Математический энциклопедический словарь. — Сов. энцикл., 1988-01-01. — С. 823. — 856 с. Архивировано 20 декабря 2016 года.
  6. Brice Carnahan, James O. Wilkes. The IBM Personal Computers and the Michigan Terminal System. — UM Libraries, 1987-01-01. — 366 с. Архивировано 20 декабря 2016 года.
  7. Игровые клавиатуры: Макросы вам в помощь. Дата обращения: 29 августа 2018. Архивировано 30 августа 2018 года.
  8. Клавиатура Optimus Maximus: $500 за OLED-пробел Архивная копия от 13 января 2020 на Wayback Machine — 3dnews

Ссылки[править | править код]