¿Qué es un código de escaneo?

Muy pocas personas reconocen cuántos cálculos, códigos y procesos se utilizan solo para que un carácter de un teclado de computadora aparezca en la pantalla. Una parte de esta función es el código de escaneo, o un código hexadecimal que es el equivalente a la tecla presionada en el teclado. Hay un código de escaneo para cada tecla del teclado y hay otro código de escaneo separado para cuando se suelta la tecla. Los teclados para diferentes estructuras de caracteres, como los idiomas asiáticos, tendrán un número diferente de códigos de escaneo porque el número de teclas es diferente. Cuando se presiona el botón, el código se coloca en un área de búfer para que la computadora pueda procesar y luego agregar el carácter o reconocer la clave.

El proceso completo del teclado se puede dividir en varios pasos diferentes. Cuando se presiona la tecla, el código de escaneo ingresa al búfer del teclado. Mientras está en el búfer, se utiliza una interrupción para decirle a la computadora que se ha presionado algo en el teclado. Después de comprender que se presionó una tecla, la computadora mira el búfer, verifica el código hexadecimal y luego agrega el carácter o su atributo en la pantalla.

Tanto el texto como los caracteres de control tienen códigos de exploración. Las teclas de texto son las más utilizadas, que contienen letras, números y símbolos, pero los caracteres de control también se utilizan con frecuencia. Los caracteres de control son los que no forman ningún símbolo pero que afectan el documento o el procesamiento de caracteres, como las teclas «shift» o la tecla «enter».

Cada tecla del teclado tiene dos códigos de escaneo diferentes, uno para presionar y otro para soltar. Cuando se presiona una tecla, da un código de escaneo y el segundo código agrega 128 al valor hexadecimal. Esto puede parecer inútil, porque parece raro que alguien mantenga presionada una tecla durante varios segundos, pero esto se hace a menudo con algunos caracteres de control, como las teclas «shift» o «eliminar».

El valor hexadecimal de cada tecla varía según el teclado. Cada empresa tiene su propio teclado y, aunque la configuración puede ser similar o incluso la misma que otras, los códigos de exploración pueden ser diferentes. Por lo general, esto es para permitir que el fabricante cree teclados con diferentes configuraciones de teclas o para agregar nuevas funciones al teclado, como una tecla de «impresión».

Otro factor para determinar el valor hexadecimal de cada clave es el idioma para el que está hecha. Por ejemplo, los teclados japoneses e ingleses tienen un número diferente de teclas porque el número de caracteres utilizados es diferente. Los diferentes países de habla inglesa, como Estados Unidos e Inglaterra, también tienen diferentes teclados; la mayoría de los teclados en inglés tienen 102 teclas y la mayoría de los teclados de EE. UU. tienen 101.