bitshift large strings for encoding QR Codes

Posted by icekreaman on Stack Overflow See other posts from Stack Overflow or by icekreaman
Published on 2012-10-14T21:26:52Z Indexed on 2012/10/14 21:37 UTC
Read the original article Hit count: 243

Filed under:
|
|

As an example, suppose a QR Code data stream contains 55 data words (each one byte in length) and 15 error correction words (again one byte). The data stream begins with a 12 bit header and ends with four 0 bits. So, 12 + 4 bits of header/footer and 15 bytes of error correction, leaves me 53 bytes to hold 53 alphanumeric characters. The 53 bytes of data and 15 bytes of ec are supplied in a string of length 68 (str68). The problem seems simple enough - concatenate 2 bytes of (right-shifted) header data with str68 and then left shift the entire 70 bytes by 4 bits.

This is the first time in many years of programming that I have ever needed to do something like this, I am a c and bit shifting noob, so please be gentle... I have done a little investigation and so far have not been able to figure out how to bitshift 70 bytes of data; any help would be greatly appreciated.

Larger QR codes can hold 2000 bytes of data...

© Stack Overflow or respective owner

Related posts about string

Related posts about bit-manipulation