C#で正の浮動小数点数(ieee 754、単精度32ビット)をBCDに変換するにはどうすればよいですか?
アップデート
私が間違っていなければ、私が必要としているのはパックされた BCD と呼ばれるものです。私はすでに int から BCD への変換を行っています。私のやり方では、数値 1234 は次のバイト配列になります。
{0x00, 0x00, 0x12, 0x34}
私が使用する方法(おそらく最善の方法ではありません)は次のとおりです。
public byte[] ToBCD(long num) {
long bcd = 0;
int i = 0;
while (num > 9) {
bcd |= ((num % 10) << i);
num /= 10;
i += 4;
}
byte[] bytes = BitConverter.GetBytes(bcd | (num << i));
Array.Reverse(bytes);
return bytes;
}