O que é um Scancode?
Pouquíssimas pessoas reconhecem quantos cálculos, códigos e processos são usados apenas para obter um caractere de um teclado de computador na tela. Uma parte dessa função é o scancode, ou um código hexadecimal equivalente à tecla pressionada no teclado. Existe um scancode para cada tecla do teclado e outro scancode para quando a tecla é liberada. Os teclados para diferentes estruturas de caracteres, como idiomas asiáticos, terão um número diferente de códigos de escopo, porque o número de teclas difere. Quando o botão é pressionado, o código é colocado em uma área de buffer para que o computador possa processar e adicionar o caractere ou reconhecer a chave.
Todo o processo do teclado pode ser separado em várias etapas diferentes. Quando a tecla é pressionada, o scancode entra no buffer do teclado. Enquanto estiver no buffer, uma interrupção é utilizada para informar ao computador que algo foi pressionado no teclado. Depois de entender que uma tecla foi pressionada, o computador examina o buffer, verifica o código hexadecimal e adiciona o caractere ou seu atributo à tela.
Tanto o texto quanto os caracteres de controle têm códigos de barras. As teclas de texto são as mais usadas - contendo letras, números e símbolos -, mas os caracteres de controle também são usados com freqüência. Caracteres de controle são aqueles que não fazem nenhum símbolo, mas afetam o processamento do documento ou de caracteres, como as teclas "shift" ou "enter".
Cada tecla do teclado tem dois scancodes diferentes, um para pressionar e outro para liberar. Quando uma tecla é pressionada, ela fornece um scancode e o segundo código adiciona 128 ao valor hexadecimal. Isso pode parecer inútil, porque parece raro alguém segurar uma tecla por vários segundos, mas isso geralmente é feito com alguns caracteres de controle, como as teclas "shift" ou "delete".
O valor hexadecimal de cada tecla difere com base no teclado. Cada empresa possui seu próprio teclado e, embora a configuração possa ser semelhante ou igual a outras, os códigos de escopo podem ser diferentes. Isso geralmente permite que o fabricante faça teclados com diferentes configurações de teclas ou adicione novas funções ao teclado, como uma tecla "imprimir".
Outro fator na determinação do valor hexadecimal de cada chave é o idioma para o qual ela é feita. Por exemplo, os teclados japonês e inglês têm um número diferente de teclas, pois o número de caracteres usados é diferente. Diferentes países de língua inglesa, como Estados Unidos e Inglaterra, também possuem teclados diferentes; a maioria dos teclados ingleses possui 102 teclas e a maioria dos teclados americanos possui 101.