在Java中将8位转换为字节以进行幅度调制

时间:2015-01-19 10:20:14

标签: java amplitude modulation

所以我正在编写一个用Java进行幅度解调的程序。我按值读取正弦波值并确定我是否有'1'或'0'。现在我将它们保存为字符,但我愿意接受建议。我知道每位的采样数,因此确定该位不是问题。

我无法找到将每组8位转换为一个字节的方法,因此我可以使用UTF-8解码最终的字节数组。有没有一种有效的方法呢?

2 个答案:

答案 0 :(得分:3)

Byte Java API

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

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

答案 1 :(得分: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)
}