Я не совсем понимаю ваш вопрос, но я предполагаю, что, например, кто-то дает вам число 98, закодированное в BCD, которое будет:
1001 1000
и вы должны получить:
62H
Что бы я предложил:
1) преобразовать закодированное в BCD значение в десятичное значение (D)
2) преобразовать D в шестнадцатеричное значение.
В зависимости от того, какой язык программирования вы выберете, эта задача будет проще или сложнее.
РЕДАКТИРОВАТЬ: В Java это может быть:
byte bcd = (byte)0x98; // BCD value: 1001 1000
int decimal = (bcd & 0xF) + (((int)bcd & 0xF0) >> 4)*10;
System.out.println(
Integer.toHexString(decimal)
);