【发布时间】:2013-01-21 01:04:33
【问题描述】:
我正在尝试从字节数组中获取正确的 int。 通过 .Net 的 POS 从 RFIDTag 读取字节。 (其实我需要 18 位)
二进制字节数组如下: 00001110 11011100 00000000 00011011 10000000
我需要摆脱它的是: 00 00000000 11101101 (int = 237)
从原始字节中以相反的顺序排列以下位: ------10 11011100 00000000
我一直在研究 bitArray。数组.反向。以及几种移位位的方法。但我就是无法理解这个。
谁能指出我正确的方向?
【问题讨论】:
-
为什么要倒序?
<< 4不会将所需的数字移到第一个字节中吗?对这些位的描述将比仅仅猜测所需信息的位置非常有用且更好。 -
由于回文位序列 1110110111 很难判断您是需要反转还是只是位移。
-
是的,除非我们得到规范,否则我们会以猜测结束。但是很难相信这些位应该被颠倒。字节,好的,但是位?从未遇到过位反转的情况。
-
看看这个问题(以及“最佳”答案):stackoverflow.com/questions/6654159/…
-
嗨。谢谢您的帮助。但我没有具体说明。我的场景是这样的:我有一个 RFID (iClass) 读卡器。我有 5 张可以测试的卡。卡片上写有一个数字,但这个数字只是读取时给出的实际字节/位的一部分。我使用 Docklight (docklight.de/download_en.htm) 读取卡片并获取卡片上的信息。我发现要正确获取每张卡上的号码,我需要在每张卡上遵循相同的程序。选择相同的 18 位,并以相反的顺序设置它们。大卫
标签: c# binary byte bits bitarray