Pack K Bits: Difference between revisions

From GNU Radio
Jump to navigation Jump to search
No edit summary
No edit summary
Line 2: Line 2:
Converts a stream of bytes with 1 bit in the LSB to a byte with K relevant bits.
Converts a stream of bytes with 1 bit in the LSB to a byte with K relevant bits.


More specifically, it packs K unpacked bits (one bit per byte) into a single packed byte containing K bits and 8 - K zeros.
In other words, it packs K unpacked bits (one bit per byte) into a single packed byte containing K bits and 8 - K zeros.


This block takes in K bytes at a time, and uses the least significant bit to form a new byte.
This block takes in K bytes at a time, and uses the least significant bit to form a new byte.


Example: K = 4 in = [0,1,0,1, 0x81,0x00,0x00,0x00] out = [0x05, 0x08]
Example: K = 4 in = [0,1,0,1, 0x81,0x00,0x00,0x00] out = [0x05, 0x08]

Revision as of 23:18, 3 May 2019

Converts a stream of bytes with 1 bit in the LSB to a byte with K relevant bits.

In other words, it packs K unpacked bits (one bit per byte) into a single packed byte containing K bits and 8 - K zeros.

This block takes in K bytes at a time, and uses the least significant bit to form a new byte.

Example: K = 4 in = [0,1,0,1, 0x81,0x00,0x00,0x00] out = [0x05, 0x08]