#! /usr/bin/env perl use strict; use warnings; # 32bit data my $buf = 0x12345678; # reverse byte order in 32bit value my $buf2 = unpack( 'L', reverse pack L => $buf ); # show me the bytes in hex: my $FORMAT = ( "%02x " x 4 ) . "\n"; printf $FORMAT, unpack( "W*", pack L => $buf ); printf $FORMAT, unpack( "W*", pack L => $buf2 ); __END__ Output: 78 56 34 12 12 34 56 78