Me imagino que usas un teclado estándar con los dígitos hexadecimales, si es así, no se trabaja con letras, se trabaja con número hexadecimales. Esto se hace declarando una variable de la longitud deseada y tratándola a nivel de nibbles para poder trabajar con los dígitos de la que esta compuesta, un nibble = 4bit.
Por ejemplo:
Para usar un código de 4 dígitos hexadecimales que puede ser el C5FB, usaríamos una variable de 16bit o lo que es lo mismo de 2bytes, esto a efectos internos de información no es más que un número, pero para su modificación o para una visualización correcta tenemos que construir una rutina que la trate a nivel de nibbles, ya sea para modificarla o visualizarla.