Tastatură

Tastatura este o componentă hardware periferică a calculatorului ce permite utilizatorului să introducă în unitatea centrală a acestuia date (litere, cifre și semne speciale) prin apăsarea unor taste. Cele mai folosite tastaturi pe plan mondial sunt cele de tip QWERTY. Un alt tip de tastaturi este tipul QWERTZ. Denumirile vin de la primele șase taste de pe rândul al treilea. Tipul QWERTY se folosește mai ales în țările anglofone, iar celelalte folosesc mai ales tipul QWERTZ.

Tastatura este probabil cel mai vechi dispozitiv de intrare din structura computerelor moderne, ea fiind inventată încă înainte de apariția monitoarelor și a mausului. Fiecare tastă are asociat un număr de identificare care poartă denumirea de "cod de scanare". La apăsarea unei taste, tastatura trimite sistemului de calcul codul de scanare corespunzător tastei respective (un număr întreg de la 1 la „n” - numărul de taste). La primirea codului de scanare de la tastatură, calculatorul face conversia între numărul primit și codul ASCII corespunzător în logică binară.

Tastatura ia în considerație nu numai apăsarea (durata) unei taste, dar și momentul eliberării acesteia, fiecare acțiune fiind înregistrată separat. Există două categorii de taste:
 "taste comutatoare" – au efect când sunt apăsate și/sau când sunt eliberate
 "taste de control" - au efect numai atunci când sunt acționate (apăsate)

Microcontrolerul 8042 
Există două tipuri de microcontrolere ale tastaturii care comunică cu sistemul - unul pe placa de bază a calculatorului(controler integrat), și unul care este situat în interiorul tastaturii. Comunicarea cu microcontrolerul de pe placa de bază se efectuează prin portul 64h. Citirea octeților (byte) relevă starea controlerului. Scrierea pe acest bit trimite controlerului integrat o comandă. Organizarea octetului (baitului) pentru indicarea stării controlerului este reprezentată mai jos:

Comunicarea cu microcontrolerul situat în interiorul tastaturii se efectuează prin biții care trec prin porturile de intrare 60h și 64h. Octeții 0 și 1 asigură legătura sau așa-numitul proces „handshaking”. Înainte de a scrie ceva prin aceste porturi, octetul 0 a portului 64 trebuie să fie 0; datele sunt disponibile pentru citire prin portul 60 atunci când octetul 1 al portului 64h este egal cu 1. Octeții (baiții) tastaturii care indică starea tastaturii (port 64h) vor determina dacă tastatura este activă sau vor întrerupe sistemul atunci când utilizatorul va apăsa sau va da drumul la o tastă.

Octeții care sunt scriși pentru portul 60h sunt trimiși către microcontrolerul tastaturii, iar octeții scriși prin portul 64h sunt expediați controlerului integrat de pe placa de bază. Octeții citiți prin portul 60h în general vin de la tastatură, de asemenea există posibilitatea de programare a microcontrolerului de pe placa de bază pentru a returna anumite valori pentru un anumit port.

Modele de tastaturi 
Tastaturile calculatoarelor pot deține una sau mai multe din următoarele caracteristici:
 tastaturi standard
 tastaturi ergonomice
 tastaturi multimedia
 tastaturi fără fir
 tastaturi speciale

Tastatura constă dintr-o serie de comutatoare montate într-o rețea, numită matrice a tastelor. Când se apasă o tastă, un procesor aflat în tastatură o identifică prin detectarea locației din rețea. De asemenea, acesta interpretează cât timp stă tasta apăsată, și poate trata chiar și tastările multiple. Interfața tastaturii este formată de un circuit integrat denumit keyboard chip sau procesor al tastaturii. Un buffer de 16 octeți din tastatură operează asupra tastărilor rapide sau multiple, transmițându-le sistemului succesiv.

În cele mai multe cazuri, atunci când apăsăm o tastă, contactul se face cu mici întreruperi, respectiv apar câteva schimbări rapide închis – deschis. Acest fenomen de instabilitate verticală a comutatorului se numește bounce, iar procesorul din tastatură trebuie să îl filtreze, adică să îl deosebească de o tastare repetată intenționat de operator. Lucrul acesta este destul de ușor de realizat deoarece întreruperile produse de instabilitatea verticală sunt mult mai rapide decât tastările repetate cele mai rapide executate de om.

Există mai multe tipuri de tastaturi, însă cele mai răspândite sunt tastaturile cu 101 sau 104 taste, diferența între ele fiind dată, în principal, de prezența sau absența unor anumite taste. De exemplu, tastatura 101 nu include tasta numită Windows Logo, în timp ce tastatura de tipul 104 are inclusă această tastă. De obicei tastaturile sunt conectate la calculator printr-un fir introdus într-o mufă specială. Folosirea tastaturilor este extrem de simplă, fiind necesar doar să apăsăm pe butoanele ei (numite "taste"), aproape la fel cum se face la mașinile de scris mecanice sau electro-mecanice.

Grupe de taste 

Tastele sunt așezate astfel încât să ușureze introducerea informațiilor în calculator; ele sunt grupate în mai multe grupe. Amplasarea literelor pe tastatură a fost făcută ținându-se cont de frecvența diverselor litere într-o anumită limbă, de aceea o tastatură germană are literele așezate altfel decât una americană.

Blocul alfanumeric de taste
Cel mai important grup este cel care ocupă cea mai mare parte a tastaturii; el conține atât taste pentru litere (Q, W, E etc.), cifre (1, 2, 3 etc.) și simboluri (@, # etc.), cât și taste speciale (Enter, Shift, Control, Alt etc.) a căror funcționalitate variază în funcție de programul folosit; vezi mai jos.

Blocul tastelor-funcții
Deasupra grupului principal se află un șir de taste numite "funcționale" (F1, F2, F3 etc.), al căror rol este să lanseze în mod direct comenzi pentru calculator, comenzi care sunt diferite în funcție de softul pe care îl folosim la momentul respectiv. Ele sunt folosite foarte mult în jocuri, dar există și alte softuri care le utilizează.

Blocul tastelor de control al cursorului
În dreapta grupului principal se afla un grup împărțit în mai multe (de obicei trei) subgrupuri și care conține taste folosite în principal pentru navigare pe ecran (tastele care au desenate pe ele săgeți, tastele Page Up sau Page Down etc.), dar și unele taste cu funcții speciale, cum este tasta Delete.

Blocul numeric de taste
La extremitatea (marginea) dreaptă a tastaturii se află de obicei un grup de taste care sunt folosite în special pentru scrierea de cifre și pentru efectuarea de operații aritmetice (adunare, scădere etc.), tastele fiind așezate foarte comod pentru lucrul cu mâna dreapta. O parte a tastelor din acest ultim grup are o funcționalitate dublă, ele putând fi folosite și pentru navigare.

Unele taste, ca de ex. Shift, Ctrl, Alt, Windows, pot fi prezente în dublu exemplar; atunci ele sunt așezate mai mult sau mai puțin simetric față de axa verticală a tastaturii, ambele taste având de obicei aceeași funcționalitate. Unele softuri (de ex. jocuri) profită însă de faptul că o tastă este prezentă în două exemplare, și atunci specifică pentru ele două comenzi diferite. Tastaturile mai noi au o serie de taste/butoane suplimentare care sunt prevăzute special pentru aplicațiile multimedia (filme, melodii) sau pentru navigarea pe Internet. Ele lipsesc la multe tastaturi, iar când sunt prezente așezarea lor nu este supusă nici unui standard recunoscut, fiind grupate după criteriile de ergonomie proprii ale companiei producătoare.

Caracterul (litera, cifra, simbolul) asociat fiecărei taste este imprimat pe tasta respectivă și poate fi pus în evidență cu ajutorul unui editor de text (de ex. Notepad, inclus în sistemul de operare Windows). Pentru aceasta se deschide un nou document și se apăsă pe taste șir după șir, de la stânga la dreapta. Anumite taste permit scrierea a două caractere alfanumerice distincte, de exemplu o minusculă și o majusculă, dintre care unul apare dacă se apăsă tasta normal, iar celălalt doar dacă se apasă simultan și tasta Shift.

Tastele speciale 
Tastele speciale nu produc apariția pe ecran a niciunui caracter sau semn la apăsarea lor, ci au funcția de a lansa direct comenzi în cazul în care sunt apăsate singure sau în cadrul unei combinații cu alte taste.

"Enter" 
Este o tastă mare și are de obicei o formă caracteristică de literă "L" privită în oglindă. Tasta Enter are în principal rolul de a determina calculatorul să execute comanda tocmai introdusă. Tasta Enter are într-o mare măsură aceeași funcționalitate ca și butonul stâng al mausului. În cazul editării de text apăsarea tastei Enter duce la crearea unui paragraf nou de text, sub cel curent.

"←" (backspace) 
Se găsește de obicei deasupra tastei Enter și are rolul de a șterge un caracter (literă, cifră etc.) dintr-un text, aflat la stânga cursorului. Daca este ținută apăsată ea va determina ștergerea tuturor caracterelor aflate la stânga cursorului.

"↑" (shift) 
Este o tastă dublă, cea dreaptă găsindu-se de obicei sub tasta Enter, iar cea stângă pe același rând însă la marginea stângă a tastaturii. Tasta Shift este cel mai des utilizată pentru scrierea cu litere majuscule, pentru acesta trebuind să apăsăm simultan tasta Shift (indiferent care din ele) și tasta literei în cauză.

"Ctrl" (control) 
Este o tastă dublă, cea dreapta găsindu-se de obicei sub tasta Shift, iar cea stângă pe același rând însă la marginea stângă a tastaturii. Tasta Ctrl este cel mai des utilizată pentru comenzi care sunt lansate în execuție la apăsarea ei simultan cu altă tastă.

"Alt" (alternate) 
Este o tastă dublă care se găsește pe rândul cel mai de jos al tastaturii la ambele capete ale tastei alungite ("Spacebar", <spațiu>). Tasta Alt este cel mai des utilizată pentru activarea barei de meniuri a softurilor, dar și pentru comenzi care sunt lansate în execuție la apăsarea unei combinații de două sau chiar trei taste.

"■" (windows) 
Este o tastă dublă având desenat pe ea logoul (simbolul) sistemului de operare  Windows și care se găsește pe rândul cel mai de jos al tastaturii, lângă tastele Alt. Tasta Windows are același efect ca și butonul "Start" din Windows.

"≡" (tastă pentru meniul contextual): 
Este situată între tastele Windows și Ctrl din partea dreaptă. Apăsarea ei duce la apariția pe ecran a unui meniu contextual, care de obicei constă dintr-o listă de comenzi utile, listă care este specifică fiecărui soft în parte și contextului particular de folosire a acestuia.

"Esc" (escape) 
Este tastă poziționată de obicei în colțul din stânga sus al tastaturii. Tasta Esc are într-o anumită măsura o funcționalitate opusă celei a tastei Enter și anume ea ne permite să evitam executarea unei comenzi în situația în care nu suntem siguri că am făcut alegerea cea mai bună. Numele tastei este sugestiv, "escape" însemnând scăpare, evitare a unei situații. Apăsând tasta Esc ne întoarcem de obicei la situația în care putem să cântărim încă o dată decizia în privința unei anumite comenzi. De exemplu atunci când instalăm un soft, tasta Esc ne permite să revizuim opțiunile instalării, înainte de a declanșa procesul de instalare propriu-zis.

"↔" (tabulator, tab) 
Este poziționată la marginea stângă a tastaturii și are desenate pe ea doua săgeți îndreptate în direcții opuse. Tasta Tab este folosită în principal pentru navigarea rapidă între elementele importante ale ferestrei unui soft (de ex. atunci când avem de ales între mai multe opțiuni și dorim să trecem rapid de la o opțiune la alta fără a folosi mausul) sau între legăturile conținute într-o pagină web. Programele editoare de text, cum ar fi Microsoft Word, utilizează tasta Tabulator pentru a introduce tabele cu coloane aliniate.

<spațiu> (spacebar, bara de spațiu) 
Este o tastă lungă aflată pe rândul cel mai de jos al tastaturii. Este folosită exclusiv pentru introducerea de spații goale în texte, de exemplu atunci când trebuie să despărțim cuvintele dintr-o frază. Datorită mărimii și așezării ei este folosită și în foarte multe jocuri pentru că este usor de apăsat fără a ne desprinde ochii de pe ecran.

"↓" (capitals lock) 
Este poziționată pe rândul cel mai din stânga al tastaturii, între tastele TAB și SHIFT. Are funcția de a bloca ("lock") corpul de litere pe care îl folosim intr-un text. Tasta este activată prin apăsare și din acest moment textul va fi scris cu majuscule. Dezactivarea se face prin apăsarea tastei încă o dată; ca urmare textul următor va fi scris cu litere mici.

"Num↓" (numeric lock) 
Determină care este funcționalitatea tastelor aflate în grupul situat în partea dreapta a tastaturii, grup în care este situată și tasta NUM LOCK. Tasta este activată și dezactivată prin repetarea tastării. Atunci când tasta este activată (situația obișnuită) grupul de taste din partea dreaptă este folosit pentru scrierea de cifre. În cazul în care tasta este dezactivată grupul de taste poate fi folosit pentru navigare, în mod similar cu tastele navigaționale. După încărcarea sistemului (Windows 98 SE, Windows Vista, Mac OS X) tasta este activată și în consecință grupul de taste din dreapta poate fi folosit pentru scrierea de cifre. În cazul SO Windows XP tasta nu este însă activată și de aceea, în momentul în care dorim să scriem cifre cu tastele din dreapta, poate apare impresia că tastatura este defectă. Soluția este să activăm tasta apăsând-o după încărcarea completă a SO, în acest fel putând să o folosim și pentru a scrie cifre.

Tastele de navigare 
Grupul tastelor navigaționale este împărțit în două subgrupuri și anume pe de o parte tastele HOME, END, PAGE UP, PAGE DOWN, și pe de alta parte tastele direcționale (care au desenate pe ele săgeți). Sunt folosite pentru navigarea în cadrul ferestrelor diverselor softuri sau în cadrul unei pagini de text. Tasta HOME ne duce la începutul unui text, tasta END ne duce la sfârșitul lui, tastele PAGE UP și PAGE DOWN ne urcă, respectiv ne coboară cu o pagină (ecran) în cadrul unui text. Tastele cu săgeți (stânga, dreapta, sus, jos) ne permit navigarea în cadrul unui text cu câte un caracter la stânga sau la dreapta, respectiv cu câte un rând în sus și în jos.

"Del" (delete) 
Este folosită pentru ștergerea unor elemente prezente în fereastra unui soft (fișierele din Windows Explorer, mesajele de poștă electronică în Outlook Express etc.), dar cel mai frecvent este folosită pentru a șterge caracterele aflate la dreapta cursorului în cadrul unei pagini de text. Poate fi folosită pentru ștergerea unui singur caracter (dacă o apăsăm o singură dată) sau pentru ștergerea unui șir de caractere (dacă o ținem apăsată mai mult timp).

Combinațiile de taste 
În general fiecare soft (program) are prevăzute câteva combinații de taste care permit lansarea unor comenzi, fără a apela la maus. Numărul de combinații posibile este mare și în general se folosesc combinații de două sau cel mult trei taste activate simultan. O combinație de două taste se scrie sub forma tasta1+tasta2 (de ex. Ctrl+A). Combinațiile de taste trebuie să includă în mod obligatoriu o tastă specială, dar celelalte taste pot fi atât taste speciale (Shift, Tab etc.), cât și taste obișnuite (tasta A, tasta C etc.) sau funcționale (F2, F6 etc.).

Configurația tastaturii românești 

Standardul național SR 13392:2004 stabilește două aranjamente ale tastelor pentru tastatura românească: un aranjament „primar” și unul „secundar”.

Aranjamentul „primar” se adresează utilizatorilor tradiționali, care au învățat să dactilografieze folosind implementările mai vechi, stil Microsoft, ale tastaturii românești. Aranjamentul „secundar” este folosit în special de către programatori și nu este în contradicție cu așezarea fizică a tastelor pe o tastatură americană. Aranjamentul „secundar” al tastelor este folosit implicit în majoritatea distribuțiilor GNU/Linux.

Există patru caractere specifice limbii române care sunt incorect implementate în toate versiunile de Microsoft Windows anterioare Windows Vista:
 "S cu virgulă dedesubt" (Unicode 0218) - implementat incorect ca "S cu sedilă dedesubt" (Unicode 015E)
 "s cu virgulă dedesubt" (Unicode 0219) - implementat incorect ca "s cu sedilă dedesubt" (Unicode 015F)
 "T cu virgulă dedesubt" (Unicode 021A) - implementat incorect ca "T cu sedilă dedesubt" (Unicode 0162)
 "t cu virgulă dedesubt" (Unicode 021B) - implementat incorect ca "t cu sedilă dedesubt" (Unicode 0163)

Versiunile cu sedilă ale caracterelor nu există în limba română (este doar o eroare istorică, moștenită) - v. http://www.secarica.ro/html/s-uri_si_t-uri.html. În română se folosesc virgulițe, nu sedile.

Deoarece tastaturile hardware românești nu sunt foarte răspândite, Cristian Secară a creat un driver care permite caracterelor românești să fie generate folosind o tastatură americană, în toate versiunile de Windows anterioare Vista. El folosește modificatorul AltGr din partea dreapta-jos a tastaturii pentru a genera caracterele. Driverul de tastatură este disponibil la http://www.secarica.ro/html/ro_keyboard.html.
indice

Tastaturi ergonomice pentru limba română 
Singura tastatură ergonomică pentru limba română existentă este tastatura Popak, creată în anul 2008. Autorul se numește Nicolae Popa (de unde și numele tastaturii).

Legături externe 
 Articol pe site-ul Howstuffworks
 Cercetare în domeniul ergonomiei - design-uri alternative ale tastaturii
 Repair4Keyboard - Ghiduri pentru a repara și modifica tastaturi pentru PC.
 JLG Extended Keyboard Layout - scrierea caracterelor Unicode folosind combinații de taste pe o tastatură US
 Bolile secrete ale tastaturii. Cu ce ne alegem dacă scriem prea mult la calculator? , 8 octombrie 2008, Anca Mureșan, Clujeanul