我有一些像这样的旧代码:
private int ParseByte(byte theByte)
{
byte[] bytes = new byte[1];
bytes[0] = theByte;
BitArray bits = new BitArray(bytes);
if (bits[0])
return 1;
else
return 0;
}
它很长,我想我可以像这样修剪它:
private int ParseByte(byte theByte)
{
return theByte >> 7;
}
但是,我没有得到与第一个函数相同的值。该字节包含 00000000 或 10000000。我在这里缺少什么?我是否使用了不正确的运算符?