Hola, se me ocurrió el siguiente algoritmo para resolver este ejercicio pero no se si es correcto:
short sumaBCD(char num1, char num2){
short res_signo = 0x000F;
short res_valor = num1 >> 4 + num2 >> 4;
return res_valor << 4 + res_signo;
}
Yo aca asumi que los parámetros vienen con su ultimo nibble de la forma 1111 por que la letra dice que son enteros sin signo, por lo que el otro nibble restante seria el valor en si del numero. Por ejemplo: 14 = 1110 1111