http://www.perlmonks.org?node_id=480851


in reply to Very Large Hex Combinations

This should get you started...

use strict; use warnings; use Math::BigInt; my $x = Math::BigInt->new; while (++$x) { # Runs forever print uc substr $x->as_hex, 2; }

The substr is needed because as_hex puts 0x before the number which you didn't want. And the uc is pretty self-explanitory.

Update: The key point here is that the op wants to go above 2 ** 32 or 2 ** 64. In those cases, I could not get sprintf "%X" to work (without having to do lots of shifting).

Ted Young

($$<<$$=>$$<=>$$<=$$>>$$) always returns 1. :-)