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

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

История 

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

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

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

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

Устройство 

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

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

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

Группы клавиш 

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

Дополнительные группы:
 мёртвые клавиши;
 специализированные клавиши .

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

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

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

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

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

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

Клавиши управления 
Клавиши управления () предназначены для выполнения определённых действий, могут использоваться отдельно или в сочетании с другими клавишами, включают следующие клавиши: , , , , , , , , , , , , .

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

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

 Клавиши системных команд
К клавишам системных команд относятся следующие клавиши: , , , , , .

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

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

Цифровая клавиатура 

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

Специализированные клавиши

Мультимедийные клавиши 

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

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

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

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

Компактные клавиатуры 
С целью экономии места на рабочем столе или для того, чтобы уместить клавиатуру на устройстве, на котором полноразмерная клавиатура не может поместиться, производители клавиатур могут располагать клавиши на клавиатуре в не стандартном порядке или удалять клавиши с клавиатуры. Компактные программируемые клавиатуры популярны, например, среди геймеров и системных администраторов, так как такую клавиатуру легче носить с собой. Наиболее популярные форматы компактных клавиатур:
 80 % или TKL (от  — буквально «без десяти клавиш») — клавиатура стандартной раскладки без цифрового блока. Цифровой блок также может эмулироваться в пределах основной буквенно-цифровой клавиатуры при включении режима ;
 75 % — распространённый на ноутбуках формат, при котором клавиши , ,  и  могут либо располагаться в один столбец по правому краю клавиатуры, либо эмулироваться через клавишу  совместно с курсорными клавишами. Малоиспользуемые клавиши (, , ), как правило, тоже эмулируются;
 60 % — формат, при котором клавиатуры состоят исключительно из буквенно-цифрового блока, клавиш-модификаторов, клавиш ,  и . Все остальные клавиши (-, стрелки и другие) эмулируются с помощью клавиши . Наиболее известный представитель — .

Игровые клавиатуры 

Игровая клавиатура — специализированная клавиатура, кнопки на которой расположены в соответствии со спецификой той или иной игры (см. также Игровой контроллер).
В некоторых таких клавиатурах можно переназначить любую клавишу произвольным образом: не только поставить в соответствие любой клавише тот или иной скан-код, но и назначить макросы; зачастую клавиши у них выделены цветом/подсвечены, или даже в них встроены миниатюрные дисплеи — OLED или ЖК (напр., у клавиатуры Optimus maximus).

Ссылки 

 Клавиатура компьютера на Глоссарий.ру
 Великие клавиатуры прошлого // Компьютерра, 4.05.2008

Примечания