my $d; my $c = sub { print chr( shift() - 1 - $d + unpack "V", unpack "P4", pack "V", 4 + s +hift ); }; $d = 1 + unpack "V", unpack "P4", pack "V", 4 + $c; { my $F1 = $c; $c->( 64, $c ) }{ $c->( 32, $c ) } + { my $F1 = my $F2 = my $F3 = $c; $c->( 112, $c ) }{ my $F1 = $c; $c->( + 100, $c ) } { $c->( 112, $c ) }{ my $F1 = $c; $c->( + 96, $c ) } { $c->( 108, $c ) }{ $c->( 44, $c ) } + { $c->( 32, $c ) }{ $c->( 112, $c ) } + { my $F1 = $c; $c->( 100, $c ) }{ $c->( 116, $c ) } + { my $F1 = $c; $c->( 96, $c ) }{ $c->( 108, $c ) } + { $c->( 44, $c ) }{ $c->( 32, $c ) } + { my $F1 = $c; $c->( 96, $c ) }{ my $F1 = my $F2 = +$c; $c->( 108, $c ) } { $c->( 100, $c ) }{ $c->( 32, $c ) } + { my $F1 = $c; $c->( 96, $c ) }{ $c->( 32, $c ) } + { $c->( 116, $c ) }{ $c->( 104, $c ) } + { my $F1 = my $F2 = my $F3 = $c; $c->( 108, $c ) }{ my $F1 = my $F2 = +$c; $c->( 112, $c ) } { my $F1 = my $F2 = $c; $c->( 108, $c ) }{ my $F1 = my $F2 = +$c; $c->( 8, $c ) } { my $F1 = $c; $c->( 84, $c ) }{ $c->( 112, $c ) } + { my $F1 = my $F2 = my $F3 = $c; $c->( 108, $c ) }{ my $F1 = my $F2 = +$c; $c->( 108, $c ) } { $c->( 32, $c ) }{ my $F1 = $c; $c->( + 96, $c ) } { $c->( 32, $c ) }{ my $F1 = my $F2 = +my $F3 = $c; $c->( 96, $c ) } { my $F1 = my $F2 = my $F3 = $c; $c->( 108, $c ) }{ my $F1 = $c; $c->( + 108, $c ) } { my $F1 = $c; $c->( 108, $c ) }{ my $F1 = my $F2 = +my $F3 = $c; $c->( 108, $c ) } { my $F1 = my $F2 = $c; $c->( 108, $c ) }{ $c->( 32, $c ) } + { my $F1 = my $F2 = my $F3 = $c; $c->( 112, $c ) }{ my $F1 = $c; $c->( + 116, $c ) } { my $F1 = $c; $c->( 108, $c ) }{ my $F1 = $c; $c->( + 108, $c ) } { my $F1 = $c; $c->( 100, $c ) }{ my $F1 = my $F2 = +$c; $c->( 112, $c ) } { my $F1 = my $F2 = my $F3 = $c; $c->( 36, $c ) }{ my $F1 = my $F2 = +my $F3 = $c; $c->( 112, $c ) } { $c->( 32, $c ) }{ my $F1 = $c; $c->( + 108, $c ) } { my $F1 = my $F2 = my $F3 = $c; $c->( 108, $c ) }{ my $F1 = my $F2 = +$c; $c->( 112, $c ) } { my $F1 = my $F2 = $c; $c->( 108, $c ) }{ $c->( 32, $c ) } + { my $F1 = $c; $c->( 44, $c ) }{ my $F1 = my $F2 = +$c; $c->( 8, $c ) } { my $F1 = $c; $c->( 64, $c ) }{ $c->( 32, $c ) } + { my $F1 = my $F2 = $c; $c->( 100, $c ) }{ $c->( 108, $c ) } + { my $F1 = $c; $c->( 96, $c ) }{ my $F1 = my $F2 = +my $F3 = $c; $c->( 112, $c ) } { my $F1 = my $F2 = my $F3 = $c; $c->( 104, $c ) }{ $c->( 32, $c ) } + { my $F1 = my $F2 = my $F3 = $c; $c->( 108, $c ) }{ my $F1 = my $F2 = +$c; $c->( 100, $c ) } { $c->( 32, $c ) }{ $c->( 68, $c ) } + { my $F1 = $c; $c->( 100, $c ) }{ my $F1 = my $F2 = +my $F3 = $c; $c->( 116, $c ) } { $c->( 32, $c ) }{ my $F1 = $c; $c->( + 44, $c ) } { $c->( 32, $c ) }{ my $F1 = $c; $c->( + 64, $c ) } { $c->( 32, $c ) }{ my $F1 = my $F2 = +$c; $c->( 64, $c ) } { my $F1 = $c; $c->( 100, $c ) }{ my $F1 = $c; $c->( + 100, $c ) } { $c->( 32, $c ) }{ my $F1 = my $F2 = +my $F3 = $c; $c->( 108, $c ) } { my $F1 = my $F2 = $c; $c->( 112, $c ) }{ $c->( 32, $c ) } + { $c->( 116, $c ) }{ my $F1 = my $F2 = +my $F3 = $c; $c->( 116, $c ) } { my $F1 = my $F2 = my $F3 = $c; $c->( 108, $c ) }{ $c->( 32, $c ) } + { my $F1 = $c; $c->( 44, $c ) }{ my $F1 = my $F2 = +$c; $c->( 8, $c ) } { my $F1 = $c; $c->( 64, $c ) }{ $c->( 32, $c ) } + { my $F1 = my $F2 = $c; $c->( 64, $c ) }{ my $F1 = my $F2 = +$c; $c->( 112, $c ) } { my $F1 = $c; $c->( 100, $c ) }{ my $F1 = $c; $c->( + 100, $c ) } { my $F1 = my $F2 = $c; $c->( 120, $c ) }{ my $F1 = $c; $c->( + 100, $c ) } { $c->( 32, $c ) }{ my $F1 = $c; $c->( + 44, $c ) } { $c->( 32, $c ) }{ my $F1 = $c; $c->( + 96, $c ) } { $c->( 32, $c ) }{ my $F1 = my $F2 = +my $F3 = $c; $c->( 96, $c ) } { my $F1 = $c; $c->( 96, $c ) }{ $c->( 112, $c ) } + { my $F1 = $c; $c->( 100, $c ) }{ my $F1 = my $F2 = +$c; $c->( 112, $c ) } { $c->( 32, $c ) }{ my $F1 = $c; $c->( + 104, $c ) } { my $F1 = my $F2 = $c; $c->( 108, $c ) }{ $c->( 32, $c ) } + { $c->( 116, $c ) }{ $c->( 104, $c ) } + { my $F1 = $c; $c->( 100, $c ) }{ $c->( 32, $c ) } + { $c->( 116, $c ) }{ my $F1 = my $F2 = +$c; $c->( 112, $c ) } { my $F1 = $c; $c->( 100, $c ) }{ my $F1 = $c; $c->( + 100, $c ) } { my $F1 = my $F2 = my $F3 = $c; $c->( 112, $c ) }{ $c->( 32, $c ) } + { my $F1 = $c; $c->( 44, $c ) }{ my $F1 = my $F2 = +$c; $c->( 8, $c ) } { my $F1 = $c; $c->( 64, $c ) }{ my $F1 = my $F2 = +$c; $c->( 108, $c ) } { $c->( 100, $c ) }{ $c->( 32, $c ) } + { my $F1 = $c; $c->( 72, $c ) }{ my $F1 = my $F2 = +my $F3 = $c; $c->( 36, $c ) } { my $F1 = $c; $c->( 108, $c ) }{ $c->( 32, $c ) } + { my $F1 = $c; $c->( 96, $c ) }{ $c->( 32, $c ) } + { my $F1 = my $F2 = $c; $c->( 80, $c ) }{ my $F1 = my $F2 = +my $F3 = $c; $c->( 108, $c ) } { my $F1 = my $F2 = my $F3 = $c; $c->( 112, $c ) }{ my $F1 = $c; $c->( + 100, $c ) } { my $F1 = $c; $c->( 32, $c ) }{ my $F1 = my $F2 = +$c; $c->( 8, $c ) } { $c->( 32, $c ) }{ my $F1 = $c; $c->( + 44, $c ) } { $c->( 32, $c ) }{ my $F1 = $c; $c->( + 68, $c ) } { my $F1 = $c; $c->( 108, $c ) }{ my $F1 = $c; $c->( + 104, $c ) } { $c->( 108, $c ) }{ my $F1 = $c; $c->( + 120, $c ) } { $c->( 32, $c ) }{ $c->( 68, $c ) } + { my $F1 = $c; $c->( 104, $c ) }{ my $F1 = my $F2 = +my $F3 = $c; $c->( 96, $c ) } { my $F1 = my $F2 = my $F3 = $c; $c->( 104, $c ) }{ my $F1 = $c; $c->( + 100, $c ) } { my $F1 = my $F2 = $c; $c->( 108, $c ) }{ my $F1 = my $F2 = +my $F3 = $c; $c->( 112, $c ) } { my $F1 = my $F2 = my $F3 = $c; $c->( 108, $c ) }{ my $F1 = my $F2 = +$c; $c->( 108, $c ) } { my $F1 = my $F2 = $c; $c->( 8, $c ) }

Update 2009-09-01. Works on 5.10.0 and it's prettier.

Update 2002-10-17. This code makes assumptions about your perl runtime environment that may not be true. In particular your CPU should be little endian and use 32 bit pointers. Your compiler should not re-order structs. This means that the code as written works great on each of the platforms I tested it on. This is just a case where your mileage may vary.

Those environments are all ix86 using stock gcc-compiled perl unless otherwise stated:


In reply to Emily Dickenson in perl by diotalevi

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.