2017-02-27 17 views
-2

如何進行基本功能XOR運算陣列XOR運算CAL

例如: 我的$ A = 「08 F6」; my $ b =「4C 6E」;

輸出應該= 44 98

http://xor.pw/等?對字符串

+3

注意,不應該使用'$了'和'$ B'。它會干擾'sort'和其他潛艇。 – ikegami

回答

4

使用XOR:

my $x_hex = '08 F6'; 
my $y_hex = '4C 6E'; 

my $x = pack('(H2)*', split(' ', $x_hex)); # my $x = "\x08\xF6"; 
my $y = pack('(H2)*', split(' ', $y_hex)); # my $y = "\x4C\x6E"; 

my $z = $x^$y;        # my $z = "\x44\x98"; 

my $z_hex = join(' ', unpack('(H2)*', $z)); # my $z_hex = "44 98"; 

上的數字使用XOR:

my $x_hex = '08 F6'; 
my $y_hex = '4C 6E'; 

my @x = map { hex($_) } split(' ', $x_hex);   # my @x = (0x08, 0xF6); 
my @y = map { hex($_) } split(' ', $y_hex);   # my @y = (0x4C, 0x6E); 

my @z = map { $x[$_]^$y[$_] } 0..$#x;    # my @z = (0x44, 0x98); 

my $z_hex = join ' ', map { sprintf("%02X", $_) } @z; # my $z_hex = "44 98"; 
+0

thx爲答覆哥們:* –