1

例如,假设一个 QR 码数据流包含 55 个数据字(每个长度为一个字节)和 15 个纠错字(又是一个字节)。数据流以 12 位标头开始,以 4 个 0 位结束。因此,12 + 4 位页眉/页脚和 15 个字节的纠错,留给我 53 个字节来容纳 53 个字母数字字符。53 个字节的数据和 15 个字节的 ec 以长度为 68 (str68) 的字符串提供。问题似乎很简单——将 2 个字节的(右移)标头数据与 str68 连接,然后将整个 70 个字节左移 4 位。

这是多年编程以来我第一次需要做这样的事情,我是 ac 和比特转移的菜鸟,所以请温柔......我做了一些调查,到目前为止还没有弄清楚如何位移 70 字节的数据;任何帮助将不胜感激。

较大的 QR 码可以容纳 2000 字节的数据...

4

1 回答 1

1

您需要一次查看这 4 位。

您需要担心的前 4 位是第一个字节的低位。幸运的是,这是一个简单的情况,因为它们需要以第一个字节的高位结束。

您需要担心的接下来的 4 位是第二个字节的高位。这些最终需要作为第一个字节的低位。

您需要担心的接下来的 4 位是第二个字节的低位。但幸运的是,您已经知道如何做到这一点,因为您已经为第一个字节做到了。

你继续这种方式,直到你处理完第 70 个字节的低字节。

于 2012-10-14T21:36:03.620 回答