Vad är en scancode?
Mycket få människor känner igen hur många beräkningar, koder och processer som används bara för att få ett tecken från ett datortangentbord på skärmen. En del av denna funktion är scancoden, eller en hexadecimal kod som motsvarar tangenten som trycks på tangentbordet. Det finns en scancode för varje tangent på tangentbordet, och det finns en annan separat scancode för när tangenten släpps. Tangentbord för olika karaktärsstrukturer, till exempel asiatiska språk, kommer att ha ett annat antal scancodes eftersom antalet nycklar skiljer sig åt. När knappen trycks in placeras koden i ett buffertområde så att datorn kan behandla och sedan lägga till tecknet eller känna igen nyckeln.
Hela tangentbordsprocessen kan delas upp i flera olika steg. När tangenten trycks in kommer scancoden in i tangentbordsbufferten. I bufferten används ett avbrott för att berätta för datorn att något har tryckts på tangentbordet. Efter att ha förstått att en tangent tryckts in, ser datorn på bufferten, kontrollerar den hexadecimala koden och lägger sedan till karaktären eller dess attribut på skärmen.
Både text- och kontrolltecken har scancoder. Textnycklar är de vanligare - med bokstäver, siffror och symboler - men kontrolltecken används också ofta. Kontrolltecken är de som inte skapar någon symbol men påverkar dokument- eller teckenbehandlingen, till exempel "skift" -tangenterna eller "enter" -tangenten.
Varje knapp på tangentbordet har faktiskt två olika scancoder, en för att trycka och en för att släppa. När en knapp trycks in ger den en scancode, och den andra koden lägger till 128 till hexvärdet. Detta kan verka värdelöst eftersom det verkar sällsynt att någon håller en nyckel i flera sekunder, men detta görs ofta med vissa kontrolltecken som "skift" -tangenterna eller "ta bort" -tangenten.
Det hexadecimala värdet för varje tangent skiljer sig från tangentbordet. Varje företag har sitt eget tangentbord, och även om konfigurationen kan likna eller till och med samma som andra, kan scancodesna vara annorlunda. Detta är vanligtvis för att tillåta tillverkaren att göra tangentbord med olika tangentkonfigurationer eller att lägga till nya funktioner på tangentbordet, till exempel en "print" -tangent.
En annan faktor för att bestämma det hexadecimala värdet för varje nyckel är det språk som den är gjord för. Till exempel har japanska och engelska tangentbord ett annat antal tangenter eftersom antalet använda tecken skiljer sig åt. Olika engelsktalande länder, till exempel USA och England, har också olika tangentbord; de flesta engelska tangentbord har 102 tangenter och de flesta amerikanska tangentbord har 101.