ння клавіші, что натіскається, вона просто звітує про ті Дії, что відбуваються. Переклад Дії натіскання клавіші у значущих інформацію, яка вікорістовується програмами - це робота підпрограм ROM-BIOS, что обслуговують клавіатуру. Як ми побачимо, клавіатура зв'язується з ROM-BIOS за помощью портів и переривані
Програми, что обслуговують клавіатуру, керують Даними, что надходять Із клавіатурі, и змінюють їх будь-яким способом, Який ми покажемо. Звичайний ЦІМ програмам передаються команді, Які назіваються макросами клавіатурі, что повідомляють їм, на натіскання якіх клавіш звертати уваг и Які при цьом делать Зміни. Зміни могут складатіся з придушенням натіскань клавіш (тоб начебто Нічого НЕ відбулося), заміні одних клавіш іншімі чг заміні одного натіскання клавіші Довгого серією натіскань. Найбільш Розповсюдження Використання макросів - це СКОРОЧЕННЯ фраз, что вводяться найбільш часто; Наприклад, Ми можемо дати команду перетворювати комбінацію клавіш, таку як Alt-S, у вітання, что мі вікорістовуємо у своїй кореспонденції, таке як "Щиро Ваш". Ві можете такоже використовуват клавіші клавіатурі для СКОРОЧЕННЯ програмних команд таким чином, что трьох або чотірьох сімвольні команди можна буде вводіті одним натісканням клавіші. Подібні програми Працюють, вікорістовуючі комбінацію можливіть двох спеціальніх функцій: одна з них є Частинами DOS, а друга - Частинами ROM-BIOS.
В
Рисунок 9 - Схема та Скен-коди стандартної клавіатурі PC. br/>
Функція DOS дозволяє Програмі залішатіся резидентність у пам'яті комп'ютера, непомітно Керуючому его операціямі, у тієї годину як звичайне Керування передається іншім програмам, таким, Наприклад, як программа подготовки текстів. Возможности ROM-BIOS дозволяють перехопіті Потік ІНФОРМАЦІЇ від клавіатурі, так что до того, як інформація попал у яку-небудь програму, вона может буті переглянутися и змінена.
Щоразу, коли натіскається або відпускається яка-небудь клавіша на клавіатурі, про Цю дію сообщает ROM-BIOS за помощью переривані 9, переривані від клавіатурі. Переривані 9 віклікає підпрограму ОБРОБКИ переривані, что відповідає на це читання з порту 96 (16-річно адреси 60), щоб візначіті, яка клавіша булу натиснута або відпущена. Потім очікуваній Скен-код повертається и підпрограмі, что обслуговують клавіатуру, що переводять его в 2-байтними код. Молодший байт цього коду містіть звичайний код ASCII клавіші, а старший байт - Скен-код клавіатурі. СПЕЦІАЛЬНІ клавіші, Такі як функціональні клавіші и клавіші додаткової цифрової клавіатурі, мают у молодшому байті нуль, а в старшому - Скен-код.
Потім підпрограмі ROM-BIOS розміщують відтрансльованій код у черго, что находится в молодших адресах пам'яті, з 0000 04IE. Ці коди знаходяться тут Доті, пока не будут запітані програмою, что очікує Введення з клавіатурі.