in reply to Fastest byteswap (little endian to big endian (eg. 34127856 -> 12345678)
my($data, $n); my $bufsize = 4096; my $mask0 = "\xff\0" x ($bufsize / 2 + 1); my $mask1 = "\0\xff" x ($bufsize / 2 + 1); $data = "\0"; while (($n = read $file, $data, $bufsize, 1) != 0) { print $reversedFile substr(((substr($data,2) & $mask0) | ($data & $mask1)), 0, $n) +; }
Dave.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Fastest byteswap (little endian to big endian (eg. 34127856 -> 12345678)
by ikegami (Patriarch) on Apr 14, 2015 at 12:50 UTC | |
by dave_the_m (Monsignor) on Apr 14, 2015 at 13:03 UTC |