- Hexspeak
-
Hexspeak, like leetspeak, is a novelty form of variant English spelling.
Hexspeak was created by programmers who wanted a magic number, a clear and unique identifier with which to mark memory or data. Using hexadecimal notation, which includes the digits 0123456789ABCDEF, it is possible to create small words with the digit "0" representing the letter "O", "1" representing the letters "I" or "L", "5" representing "S", "7" representing "T", and "6" or "9" representing "G" or "g" respectively. Numbers such as 2 or 8 can be used in a manner similar to leet or rebuses; e.g. the word "defecate" can be expressed either as DEFECA7E or DEFEC8. (2 bears a resemblance to Z, but because that letter is the least used in the English language, such a usage is very rare.)
Contents
Notable magic numbers
For more details on this topic, see Magic number (programming).Many computer processors, operating systems, and debuggers make use of magic numbers, especially as a magic debug value.
- 0x8BADF00D ("ate bad food") is used by Apple in iOS crash reports, when an application takes too long to launch, terminate, or respond to system events.[1]
- 0x1BADB002 ("I bad boot"[citation needed]) Multiboot header magic number.[2]
- 0xBAADF00D ("bad food") is used by Microsoft's LocalAlloc(LMEM_FIXED) to indicate uninitialised allocated heap memory when the debug heap is used.[3]
- 0xCAFEBABE ("cafe babe") is used by Mach-O to identify Universal object files, and by the Java programming language to identify Java bytecode class files.[4]
- 0xCAFED00D ("Cafe Dude") is used by Java as a magic number for their pack200 compression.[5]
- 0xD15EA5E ("disease") is a flag that indicates regular boot on the Nintendo GameCube and Wii consoles.[6][7]
- 0xDEADBABE ("Dead Babe") is used by IBM Jikes RVM as a sanity check of the stack of the primary thread [8]
- 0xDEADBEEF ("dead beef") is frequently used to indicate a software crash or deadlock in embedded systems. It is used by IBM RS/6000 systems, Mac OS on 32-bit PowerPC processors and the Commodore Amiga as a magic debug value. On Sun Microsystems' Solaris, it marks freed kernel memory. On OpenVMS running on Alpha processors, DEAD_BEEF can be seen by pressing CTRL-T. The DEC Alpha SRM console has a background process that traps memory errors, identified by PS as "BeefEater waiting on 0xdeadbeef".[9]
- 0xDEADDEAD ("dead dead") is the bug check (STOP) code displayed when invoking a Blue Screen of Death either by telling the kernel via the attached debugger, or by using a special keystroke combination.[10] This is usually seen by driver developers, as it is used to get a memory dump on Windows NT based systems. An alternative to 0xDEADDEAD is the bug check code 0x000000E2,[11] as they are both called MANUALLY_INITIATED_CRASH as seen on the Microsoft Developer Network.
- 0xDEADFA11 ("dead fall") is used by Apple in iOS crash reports, when user force quit the application.[1]
- 0xDEFEC8ED ("defecated") is the magic number for OpenSolaris core dumps.[12]
- 0xFACEFEED ("face feed") is used by Alpha servers running Windows NT. The Alpha Hardware Abstraction Layer (HAL) generates this error when it encounters a hardware failure.[13]
- 0xFEE1DEAD ("feel dead") is used as a magic number in the Linux reboot system call.[14]
- 0xE011CFD0 is used as magic number for Microsoft Office files. In little endian this reads D0CF11E0, "docfile0".[15]
- 0x0000000FF1CE is used as the last part of product codes (guid) for Microsoft Office components (visible in registry under HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall registry key.
- 0x00BAB10C (oo-ba-block) is used as the magic number for the ZFS uberblock.
- C15C:0D06:F00D (cisco dog food) used in the IPv6 address of www.cisco.com on World IPv6 Day. "Dog food" refers to Cisco eating its own dog food with IPv6.
- face:b00c (facebook) used in the IPv6 address of www.v6.facebook.com
Alternative letters
- In the Ada programming language, hexadecimal numbers are enclosed by "16#" and "#". For example, "16#Ada_Ada_Ada_Ada#".
- The C programming language notation uses the "0x" prefix to indicate a hexadecimal number; the "0x" is usually ignored when reading the letters or numbers.
- In the Intel assembly language, hexadecimal numbers are denoted by a "h" suffix. For example: FEEDADEADF15h ("feed a dead fish"). Note that numbers in this notation that begin with a letter have to start with a zero to distinguish them from variable names. "FEEDADEADF15h" would then be "0FEEDADEADF15h".
- In Pascal and 6502 assembly language, hexadecimal numbers are denoted by a "$" prefix. This allows for words starting with the letter "S", for example $EED ("seed").
- In Б3-34 programmable calculators alternative hexadecimal alphabet was used, where the symbol "−", "L", "C", "Г", "E", " " (space) were used instead of Latin letters. Using these it was possible to display messages like "EГГ0Г" (error).
See also
- Leet
- file (command)
References
- ^ a b "Technical Note TN2151: Understanding and Analyzing iPhone OS Application Crash Reports". http://developer.apple.com/iphone/library/technotes/tn2008/tn2151.html.
- ^ "Multiboot specifications". http://www.gnu.org/software/grub/manual/multiboot/multiboot.html#Header-magic-fields.
- ^ "Win32 Debug CRT Heap Internals". http://www.nobugs.org/developer/win32/debug_crt_heap.html#table.
- ^ "Why Cafebabe". Artima.com. http://www.artima.com/insidejvm/whyCAFEBABE.html. Retrieved 2009-10-01.
- ^ "Pack200: A Packed Class Deployment Format For Java Applications". http://download.oracle.com/javase/6/docs/technotes/guides/pack200/pack-spec.html#tocArcHea. Retrieved 2010-11-03.
- ^ "Yet Another Gamecube Documentation: Dolphin-OS Globals". http://hitmen.c02.at/files/yagcd/yagcd/chap4.html#sec4.2.1.1.2.
- ^ "Wiibrew: Memory Map". http://wiibrew.org/wiki/Memory_Map.
- ^ "DEADBABE sanity check". http://svn.sourceforge.net/viewvc/jikesrvm/rvmroot/trunk/tools/bootImageRunner/ia32/libvm.c?revision=15664&view=markup:. Retrieved 2009-10-01.
- ^ "Jargon File entry for DEADBEEF". Catb.org. http://www.catb.org/~esr/jargon/html/D/DEADBEEF.html. Retrieved 2009-10-01.
- ^ "Bug Check 0xDEADDEAD: MANUALLY_INITIATED_CRASH, MSDN". msdn.microsoft.com. 2009-10-01. http://msdn.microsoft.com/en-us/library/ms797162.aspx. Retrieved 2009-10-13.[dead link]
- ^ "Bug Check 0xE2: MANUALLY_INITIATED_CRASH, MSDN". msdn.microsoft.com. 2009-10-01. http://msdn.microsoft.com/en-us/library/ms797144.aspx. Retrieved 2009-10-13.[dead link]
- ^ "Opensolaris header line 45 for 0xDEFEC8ED". src.opensolaris.org. http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/sys/dumphdr.h#45. Retrieved 2011-07-12.
- ^ "Technet article for 0xFACEFEED". Support.microsoft.com. 2006-11-01. http://support.microsoft.com/kb/132349. Retrieved 2009-10-01.
- ^ "include/linux/reboot.h". http://git.kernel.org/?p=linux/kernel/git/next/linux-next.git;a=blob_plain;f=include/linux/reboot.h;hb=HEAD.
- ^ "Documents That Are Supported by the Office Filter". http://support.microsoft.com/kb/318326.
Categories:- Source code
- Obfuscation
- Computer humor
Wikimedia Foundation. 2010.