繁体   English   中英

C#-位解析8字节数组

[英]c# - bit parsing 8 byte array

字节数:240255255255 9 0 224 9 0

f0 ff ff 09 00 E0 09 00

Little Endian unsigned int 64翻译:

00 09 E0 00 09 ff ff f0

int value1 = 0-19 bits  
int value2 = 20-39 bits 
int value3 = 40-59 bits
int value4 = 60-62 bits 
bool value5 = 63 bit

value1 = (uint)(byteArray[0] | byteArray[1] << 8 | (byteArray[2] << 16)) & 0x14;

我这样做正确吗? 我一直得到0值,但应该是158。

计算中的最后一个运算是& 0x14 这将对二进制值0001 0100进行逐位处理。 您正在寻找前20位,因此掩码应为0xfffff

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM