$dna = join '',
map $conv{$_},
unpack('(A2)*', unpack("B" . $bytes * BITS_PER_BYTE , $raw));
####
my %bitMap = ('00' => 'T', '01' => 'C', '10' => 'A', '11' => 'G');
my @byteMap = map{
join '', map $bitMap{ $_ }, unpack '(A2)4', unpack 'B8', chr
} 0 .. 255;
####
## Omit the braces add a comma for a negligable further improvement
my $DNA = join '', map{ $byteMap[ $_ ] } unpack 'C*', $raw;
####
my %bitMap = ('00' => 'T', '01' => 'C', '10' => 'A', '11' => 'G');
my @byteMap = map{
join '', map $bitMap{ $_ }, unpack '(A2)4', unpack 'B8', chr
} 0 .. 255;
my @wordMap = map {
$byteMap[ $_ >> 8 ] . $byteMap[ $_ | 0xff ]
} 0 .. 65535;
...
my $DNA = join '', map{ $wordMap[ $_ ] } unpack 'n*', $raw;