1

所以我正在用Java编写一个进行幅度解调的程序。我正在逐个读取正弦波值并确定我是“1”还是“0”。现在我将它们保存为字符,但我愿意接受建议。我知道每比特的样本数,所以确定比特不是问题。

我想不出将每组 8 位转换为一个字节的方法,因此我可以使用 UTF-8 解码最终的字节数组。有没有一种有效的方法来做到这一点?

4

2 回答 2

3

试试这个,来自Byte Java API

String myBitString = "10101010";
int radixTwo = 2;
byte myByteValue = Byte.parseByte(myBitString, radixTwo)

显然,您可以将字节值添加到byte[]数组中,然后使用循环来显示/解码它们。

于 2015-01-19T10:26:09.863 回答
0

可能有帮助的是一种转换方法......

public static byte toByte(boolean[] bits){
    assert bits.length == 8;
    int tmp = 0;
    for (int i = 0; i < 8; i ++){
        if(bits[0] ){
            tmp = tmp + (2^i);
        }
    }
    return (byte)(tmp)
}
于 2015-01-19T10:33:33.913 回答