Foarte puțini oameni recunosc câte calcule, coduri și procese sunt folosite doar pentru a obține pe ecran un caracter de la tastatura unui computer. O parte a acestei funcții este codul de scanare sau un cod hexazecimal care este echivalentul tastei apăsate pe tastatură. Există un cod de scanare pentru fiecare tastă de pe tastatură și există un alt cod de scanare separat pentru când tasta este eliberată. Tastaturile pentru diferite structuri de caractere, cum ar fi limbile asiatice, vor avea un număr diferit de coduri de scanare, deoarece numărul de taste diferă. Când butonul este apăsat, codul este plasat într-o zonă tampon, astfel încât computerul să poată procesa și apoi adăuga caracterul sau recunoaște cheia.
Întregul proces de la tastatură poate fi separat în mai multe etape diferite. Când tasta este apăsată, codul de scanare intră în tamponul tastaturii. În timp ce se află în buffer, o întrerupere este utilizată pentru a spune computerului că ceva a fost împins pe tastatură. După ce a înțeles că o tastă a fost apăsată, computerul se uită la buffer, verifică codul hexazecimal, apoi adaugă caracterul sau atributul acestuia pe ecran.
Atât caracterele de text, cât și de control au coduri de scanare. Tastele de text sunt cele mai frecvent utilizate – care conțin litere, numere și simboluri – dar caracterele de control sunt folosite adesea și. Caracterele de control sunt cele care nu fac niciun simbol, dar afectează documentul sau procesarea caracterelor, cum ar fi tastele „shift” sau tasta „enter”.
Fiecare tastă de pe tastatură are de fapt două coduri de scanare diferite, unul pentru apăsare și unul pentru eliberare. Când o tastă este apăsată, dă un cod de scanare, iar al doilea cod adaugă 128 la valoarea hex. Acest lucru ar putea părea inutil, deoarece pare rar ca cineva să țină apăsată o tastă timp de câteva secunde, dar acest lucru se face adesea cu unele caractere de control, cum ar fi tastele „shift” sau tasta „șterge”.
Valoarea hexazecimală pentru fiecare tastă diferă în funcție de tastatură. Fiecare companie are propria sa tastatură și, deși configurația ar putea fi similară sau chiar aceeași cu celelalte, codurile de scanare ar putea fi diferite. Aceasta, de obicei, este pentru a permite producătorului să creeze tastaturi cu diferite configurații ale tastelor sau să adauge noi funcții la tastatură, cum ar fi o tastă de tipărire.
Un alt factor în determinarea valorii hexazecimale a fiecărei chei este limba pentru care este realizată. De exemplu, tastaturile japoneze și engleze au un număr diferit de taste, deoarece numărul de caractere utilizat diferă. Diferite țări vorbitoare de engleză, cum ar fi Statele Unite și Anglia, au și tastaturi diferite; cele mai multe tastaturi engleze au 102 taste, iar cele mai multe tastaturi din SUA au 101.