Hello.
I would like to ask you a question. The result will differ by byte orders.
my $tmp=pack("B32", substr("0" x 32 . join('',@rand1), -32));
#this prints 'as 32bit big endian:0x2abb1'
printf "as 32bit big endian:0x%x\n", unpack('N',$tmp) ;
#this prints 'as 32bit little endian:0x200'
printf "as 32bit little endian:0x%x\n", unpack('S',$tmp) ;
There is "<" for little endian, and ">" for big endian, which pack,unpack offers. OP treats it as "N"=32bit int, big endian, so I would like to do like this.
pack("B>32", $bitstring);
pack("(B32)>*",$bitstring);
But both of them doesn't work...
How can I add endian specification with your one line conversion? Is there a good way?