#!/usr/bin/perl use strict; use warnings; use Data::Dumper; sub dec2bin { my $bits = shift; my $str = unpack("B8", pack("c", $bits)); return $str; } sub bin2dec { return unpack("c", pack("B8", substr("0" x 8 . shift , -8))); } my $floating2binary = dec2bin(-127); print "Binary from floating: ".$floating2binary."\n"; my $binary2floating = bin2dec($floating2binary); print "Binary from floating: ".$binary2floating."\n"; __END__ Binary from floating: 10000001 Binary from floating: -127