logscaf.pl
Code Index:
my $Fx = unpack("H*",$x),"\n";
my $Fn = unpack("F>",$x);
my $L2n=log2($Fn);
printf "log2(%3d/256 = %8g = %s) = %g \n", $xx,$Fn,$Fx,$L2n;
;
push @XX, $L2n;
}
=cut
1 #! perl -l
2 require 5.010;
3 use strict;
4 use warnings;
5
6 # my $nn = 0.75;
7 #print unpack("H*",pack("F>",$nn)),"\n";
8
9 my @XX;
10
28
29 @XX = map {
30 log2(
31 unpack(
32 "F>",
33 pack( "H16",
34 '3ff' . unpack( 'H2', pack( 's', $_ ) ) . ( '0' x 13 ) )
35 )
36 )
37 } 0 .. 255;
38
39 use Data::Dumper;
40 print Dumper( \@XX ), "\n";
41
42 our $_l2;
43 INIT { our $_l2 = log(2); }
44
45 sub log2 {
46 return log(shift) / log(2);
47 }