#!/usr/bin/perl use warnings; use strict; no strict "subs"; my $Status=0; # holds bitwise status sub SetStatus{ my (@bits) = @_; my %StatusBits= ( PowerOn=>1, LightOn =>2, TurboOn=>4 ); $Status |= $StatusBits{$_} foreach (@bits); } SetStatus(PowerOn,TurboOn); print "status = $Status \n";