Hola, si por ejemplo yo pongo un programa que diga:
printf("ingresa un número y presiona enter);
scanf("%d", &numero);
outportb(888,numero);
El número que usted ingresa, lo saca por el puerto, pero esto lo hace en binario
Creo que no va a haber de otra que hacer su propio decodificador, ya que no hay decodificadores de Binario a Hexa.
Una vez hice un programa que si usted presionaba un número o una letra esa la mostraba en Hexa pro el puerto paralelo pero ocupaba 7 bits, y lo mostrábamos en un display que hicimos con focos

. Pero como solo tenemos 8 bits del paralelo y ocupé 7 pues no alcanza para otro display

.
En cuanto arregle bien mi PC es que la acabo de formatear voy a subir un tuto sencillo de como hacer un deco.
Se me ocurre otro cosa más sencilla, utilizamos 7 bits multiplexados o mejor cerrojeados.
Con el octavo bit hacemos la habilitación y deshabiltación de los cerrojos :9, me gusta más esta idea

.
Ahora las letras como la D se parecerá al 0, si quiere pude hacerla minúscula d, la B parecerá 8 si la hace minúscula b=6.
Esos son los únicos problemas. Los alfanuméricos se ven mejor en una matríz de leds

.
Cuestan como 25 pesos
Saludos