my $R = 0xF1; my $G = 0xE2; my $B = 0xD3; my $rgb_int = $R + ($G<<8) + ($B <<16); my $rgb_hex = uc unpack 'H6', pack 'V', $rgb_int; print $rgb_hex;