Números de teclado vs teclas del teclado numérico

2

Esta es una pregunta de 2 partes:

  1. ¿Cuál es la diferencia entre los números del teclado y las teclas del teclado numérico? Entiendo que deben tratarse al menos ligeramente, ya que el cambio + 5 en el teclado no me da un signo de porcentaje y no puedo usar la fila de números para la entrada de Unicode.

Si yo soy leyendo este derecho los scancodes del teclado se asignarían a la combinación de numlock y el scancode escapado para el teclado y el sistema operativo o BIOS incluso daría el mismo carácter ASCII para ambas entradas de scancode.

¿Suena esto correcto? ¿En qué nivel tiene lugar la traducción que da como resultado que ambas entradas produzcan el número "1", por ejemplo, incluso antes de que se haya cargado un sistema operativo completo? (¿Controlador de teclado? ¿CPU interrumpe la recepción?)

  1. ¿Por qué no puedo comprar un teclado numérico usb (o ps2) que se asigna a la fila numérica en lugar del teclado numérico? Si quiero que el cambio 7 sea siempre "& amp;" incluso en el teclado, ¿esto viola un estándar o algo porque no puedo encontrar uno? La única opción que veo son los teclados programables en este momento.

Bonificación: ¿Hay una mejor terminología para usar cuando se hace esta pregunta?

regress
fuente
No hay nada que impida que alguien construya un teclado numérico que se asigne a los códigos de escaneo para la fila de números. O cualquier otra cosa, para el caso. Es solo que la gente no lo ha hecho. Supongo que debido a la demanda.
Tripp Kinetics

Respuestas:

0

Según fuentes que lista de teclado scancodes , las teclas numéricas son escaneadas con códigos completamente diferentes. Esto tiene sentido, ya que he usado una gran cantidad de programas que usan los dos conjuntos de teclas numéricas para diferentes propósitos. Al jugar al juego XEvil, por ejemplo, manejo con las teclas del teclado y dispare con la fila de números.

Como ejemplo, 0x73 es el teclado numérico 5y 0x2e es la fila del número 5. Similar, ctrl-5, alt-5y shift-5 Cada uno tiene dos scancodes. Y así.

No hay nada que impida que alguien cree un teclado numérico que se asigne a los códigos de escaneo para la fila de números. O cualquier otra cosa, para el caso. Es solo que la gente no lo ha hecho. Supongo que debido a la demanda.

Tampoco hay nada que le impida cambiar su propia asignación de teclado. A veces he hecho números de teclado numérico 4, 2, 8y 6 mapa para h, j, ky l para usar con vi.

Tripp Kinetics
fuente
Gracias. La parte inferior de la página enlazada responde a la primera pregunta. Sospecho que la segunda parte no es tan útil, pero al menos sé lo que voy a reconfigurar ahora. "La Rutina de Servicio del teclado procesa el Código de Escaneo, consultando dos bytes de Estado que mantienen un registro de las teclas de Estado de Cambio, y coloca un código de dos bytes en un Área de Memoria Intermedia del Teclado en la RAM. los datos se almacenan con el código ASCII como el byte principal, y el código de escaneo de la tecla presionada, como el byte auxiliar ".
regress