Thread LONG nach bitstring: pack und unpack (14 answers)
Opened by esskar at 2004-05-12 23:22

Marcus
 2004-05-13 14:12
#14922 #14922
User since
2004-05-03
18 Artikel
BenutzerIn
[default_avatar]
Hallo,

B reicht noch nicht (die Bytes stehen in der "verkehrten" Reihenfolge) ich hab es dann mal so versucht:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!/usr/bin/perl

use strict;
use warnings;

sub bitstring {
  return undef unless $_[0] =~ /^\d*$/;
  my $bstr = unpack("B*", pack("L",$_[0]));
  sprintf ( "%s%s%s%s", substr($bstr, 24, 8),
                        substr($bstr, 16, 8),
                        substr($bstr, 8, 8),
                        substr($bstr, 0, 8));
}
print "21098765432109876543210987654321\n";
print bitstring(3)."\n";
print bitstring(254)."\n";
print bitstring(255)."\n";
print bitstring(256)."\n";
print bitstring(65534)."\n";
print bitstring(65535)."\n";
print bitstring(65536)."\n";


Gruß Marcus

View full thread LONG nach bitstring: pack und unpack