C#:存储16位数据

时间:2017-10-24 11:59:36

标签: c# twos-complement

我在C#中编写了以下代码,以便从8位微控制器获得16位二进制补码值。我正在以字节形式接收数据。所以我将这两个字节组合起来形成一个16位的值。我的问题是我的所有价值观都变得消极,但实际上有些是负面的,有些则不是。请告诉我我正在做的以下代码有什么问题:

int t = 0;
int bytes = serialPort1.BytesToRead;
byte[] buffer = new byte[bytes];
serialPort1.Read(buffer, 0, bytes);
float  [] buffer2 = new float[bytes];
for(int i=0;t< buffer.Length;i++)
{
    buffer2[i]= ~(((buffer[t]<< 8) | buffer[t+1]) - 1);
    t = t + 2;
}

0 个答案:

没有答案