03
Dec
06

Fun with hexadecimal

This may be the geekiest post I’ve made to date.  The topic?  8-letter phrases in hexadecimal.

A bit of background: hexadecimal is a notation for a base-16 number system, composed of the digits 0-9 and the letters A-F.  It’s usually written with a “0x” in front of it, to distinguish it from decimal or octal, but is sometimes seen with a trailing “h” instead.

Why 8 letters?  Because a 32-bit value can be represented with 8 hex digits.  See, people usually use these things as default values for uninitialized chunks of memory, and seeing something word-like pop out of a data dump is an effective way to spot uninitialized-data bugs.

Here’s an example: 0xDEADBEEF is probably the most often seen of these hex phrases.  I use it in a malloc(3) wrapper to mark the end of a chunk of memory — if those four bytes don’t say “deadbeef” when I free the pointer, I’ve run off the end of the memory somewhere.

Similarly, I use 0xDEADl337 to mark the beginning of a chunk of memory — using the leet alphabet gives us a few extra letters (1 for L or I, 2 for Z, 5 for S, 6 for G, 7 for T, and 0 for O). 3 (E), 4 (A), and 8 (B) are technically redundant, but can be used (as above) for ironic effect.

So as it turns out, we have quite a significant alphabet: A, B, C, D, E, F, 6, 1 (I), 1 (L), 0, 5, 7, 2.

0xDECAFBAD is, alas, already taken.  Here, though, are some others:

  • 0xBADB100D — perhaps the only decent track on Ministry’s album Dark Side of the Spoon
  • 0xFEEDCA75 — because your cats are getting hungry while you’re at the keyboard
  • 0xDEADF00D — for those of us who aren’t vegetarians

There are plenty of others — 0x10575EA7 (“lost seat”), for instance — that are technically acceptable, but contain far too much leet to be immediately recognizable to a healthy mind.  Immediately recognizable chunks of hex are, after all, what we’re after here.


3 Responses to “Fun with hexadecimal”


  1. December 3, 2006 at 21:43

    Others that come to mind:

    0xDEADD00D – you know somethings wrong when you find yourself pointing at a dead dude.
    0xA5ADFAC7
    0xFA7B00B5 – programmatically, marking memory volatile is the closest we have to ‘jiggly’

    This is a great field for research.

  2. December 3, 2006 at 21:48

    For the Nietzscheans, 0x60D5DEAD seems appropriate.

  3. October 1, 2013 at 08:03

    What’s up friends, its impressive paragraph concerning educationand completely defined, keep it up all the time.


Leave a reply; use raw HTML for markup. Please blockquote quotations from the post or other comments.


anarchocapitalist agitprop

Be advised

I say fuck a lot

Categories

Archives

Statistics FTW