Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#-U将数组排序为多个位_C#_Bit Manipulation_Data Conversion_Ushort - Fatal编程技术网

C#-U将数组排序为多个位

C#-U将数组排序为多个位,c#,bit-manipulation,data-conversion,ushort,C#,Bit Manipulation,Data Conversion,Ushort,我有一个从设备读取的ushort[3]数据。现在我想将其转换为以下格式: 第一个字ushort[0]-->16位 第二个字ushort[1]-->8位和2*4位 第三个字ushort[2]-->4*4位 例如: ushort[3]是325616 转换后: 第一个单词0000 0000 0011 第二个单词ushort[1]-->01 0000 第三个单词ushort[2]-->0110 最后将其存储为c中的字节[30]# 我希望我已经清楚地解释了这个问题,并欢迎任何建议。谢谢 你的例子不符合

我有一个从设备读取的
ushort[3]
数据。现在我想将其转换为以下格式:

第一个字
ushort[0]-->16位

第二个字
ushort[1]-->8位和2*4位

第三个字
ushort[2]-->4*4位


例如:

ushort[3]是
325616

转换后: 第一个单词
0000 0000 0011

第二个单词
ushort[1]-->01 0000

第三个单词
ushort[2]-->0110


最后将其存储为c中的字节[30]#


我希望我已经清楚地解释了这个问题,并欢迎任何建议。谢谢

你的例子不符合你的定义。ushort[1]仅为10位(不是8&2*4=16),ushort[2]仅为4位(而不是4*4=16)。如果您试图将
ushort
s转换为二进制形式,您可以在此处找到解决方案:@RomanoZumbé抱歉我的表达式。图片中的黄色区域是4位数据,不是C标准的数据类型,可以将其视为一个高4位缺省值为0的字节。