0

所以我有这个字节数组:

// tvltmp[0] = 0x21;
// tvltmp[1] = 0x63;
// tvltmp[2] = 0x84;

这代表"12:36:48"了我所说的“反转字节序 BDC”。

要对其进行解码,只需遵循本手册:

      LSD | MSD 
byte0    2|1    Hour
byte1    6|3    Minute
byte2    8|4    Second

LSD = Least Significant Digit
MSD = Most Significant Digit

这很公平。

我只是不知道如何在 Java 中完成这项工作。

基本上,我如何反转字节数组的字节序(假设这确实是字节序问题)?

以及如何从 Java 中的 BCD 字节获取正确的值?我的意思是,如果我做典型的& 0xFF事情显然会出错......

谢谢,

4

1 回答 1

1

像这样的东西:

public int fromReverseBCD(byte b) {
    return 10 * (b & 0xf) + ((b >>> 4) & 0xf);
}
于 2011-04-01T12:21:04.473 回答