perl -wMstrict -le 'print unpack("i",pack("B32","00000011"))'
3
####
perl -wMstrict -le 'print unpack("B8",pack("i",3))'
00000011
####
#!/usr/bin/perl
use strict;
use warnings;
sub dec2bin {
my $bits = shift;
my $size = shift;
my $template = shift;
return unpack("B$size", pack($template, $bits));
}
sub bin2dec {
my $bits = shift;
my $size = shift;
my $template = shift;
return unpack($template, pack("B$size",substr("0" x $size . $bits , -$size)));
}
my $int2bin = dec2bin( 3 , 8 , "c" );
print "Int2bin: ".$int2bin."\n";
my $binary2int = bin2dec( $int2bin , 8 , "c" );
print "Decimal from binary: ".$binary2int."\n";