#!/usr/bin/perl use Math::BigInt; my $num = new Math::BigInt; my $base = '1000'; my $base = '0x76'; my $t = "Just Another Perl Hacker.\n"; my @letters = split //, $t; my $count = new Math::BigInt (length $t); print "num: "; foreach $c (@letters) { $count--; $v = new Math::BigInt (ord $c); $num += ($v * ($base ** $count)); printf("%-3.3d ",ord $c); } print "\n"; print "num: 0$num\n"; =pod my $num = new Math::BigInt '470013798756835671577848322662246982890264128484707150'; my $num2 = $num->copy; $count = new Math::BigInt '26'; while ($num2 > 0) { $count--; $newnum = $num % ($base ** $count); $num2 = ($num2 - $newnum) / ($base ** $count); $c = $num2; #print "nr:\n$newnum\n$num2\n"; #print (chr $c); $num2 = $newnum; } $a='Math::BigInt';eval"use $a";$c=new$a('26');$n=new$a ' 0x4e83c7dcd1a0793e8e1952169629c92ae4ed23bf28b4e';do{$b=' 0x76'**--$c;$m=$n%$b;$n=($n-$m)/$b;print(chr $n);$n=$m;} while($n) 0x76'**--$c;$n=($n-($m=$n%$b))/$b;print(chr $n);$n=$m;} =cut; # $c = ($num - ('0x100' ** $a='Math::BigInt';eval"use $a";$c=new$a('26');$n=new$a ' 0x4e83c7dcd1a0793e8e1952169629c92ae4ed23bf28b4e';do{$b=' 0x76'**--$c;$n-=$m=$n%$b;$n/=$b;print chr$n}while($n=$m)