use warnings; use strict; print "Please input a decimal no. to convert to binary : "; chomp (my $value = ); foreach my $power (0..7) { # Originally 2 ** $power, but that's backwards! my $mask = 2 ** (7 - $power); apply_mask($value, $mask); } sub apply_mask { my $value = shift; my $mask = shift; if ($value & $mask) { print "1"; } else { print "0"; } }