http://www.perlmonks.org?node_id=997547


in reply to PERL Binary Data Handling

Sample input? Expected output?

I usually try to figure this out with real data, something where you know what result you're expecting, along the lines of

$ perl -le " print join q/ /, unpack q/(A4)*/, unpack q/B*/, pack q/B +33/, 1, 66 " 1000 0000 0000 0000 0000 0000 0000 0000 0000 0000 $ perl -le " print join q/ /, unpack q/(A2)*/, unpack q/H*/, pack q/B3 +3/, 1,66 " 80 00 00 00 00

or maybe

$ perl -le " print join q/ /, unpack q/(A2)*/, unpack q/H*/, pack q/B3 +3/, join q//, 1, unpack q/B32/, 66 " 9b 1b 00 00 00 $ perl -le " print join q/ /, unpack q/(A4)*/, unpack q/B*/, pack q/B3 +3/, join q//, unpack(q/B1/,1), unpack q/B32/, 66 " 1001 1011 0001 1011 0000 0000 0000 0000 0000 0000

or even

$ perl -le " print join q/ /, unpack q/(A4)*/, unpack q/B*/, pack q/B3 +3/, join q//, unpack(q/B1/,1), unpack q/B32/, 66 " 0001 1011 0001 1011 0000 0000 0000 0000 0000 0000