#/user/bin/perl use strict; my $intval = 66; my $pckval = pack 'c', $intval; my $pckhex = "0x" . (unpack 'H16', "$pckval"); my $stoval = "$pckval" ^ 0x80; my $stohex = "0x" . (unpack 'H16', "$stoval"); #### print "\$intval = 66; # \$intval = [$intval] - Expecting [66]\n"; print "\$pckval = pack 'c', $intval; # \$pckval = [$pckval] - Expecting [B]\n"; print "\$pckhex = \"0x\" . (unpack 'H16', \"$pckval\"); # \$pckhex = [$pckhex] - Expecting [0x42]\n"; print "\$stoval = \"$pckval\" ^ 0x80; # \$stoval = [$stoval] - Expecting [194]\n"; print "\$stohex = \"0x\" . (unpack 'H16', \"$stoval\"); # \$stohex = [$stohex] - Expecting [0xc2]\n"; #### W:\Steve\PerlMonks>perl tpm.pl $intval = 66; # $intval = [66] - Expecting [66] $pckval = pack 'c', 66; # $pckval = [B] - Expecting [B] $pckhex = "0x" . (unpack 'H16', "B"); # $pckhex = [0x42] - Expecting [0x42] $stoval = "B" ^ 0x80; # $stoval = [128] - Expecting [194] $stohex = "0x" . (unpack 'H16', "128"); # $stohex = [0x313238] - Expecting [0xc2] W:\Steve\PerlMonks>