{{Short description|Novelty form of variant English spelling}} {{Use mdy dates|date=January 2026}} '''Hexspeak''' is a novelty form of variant English spelling using the hexadecimal digits. Created by programmers as memorable magic numbers, hexspeak words can serve as a clear and unique identifier with which to mark memory or data.
Hexadecimal notation represents numbers using the 16 digits <code>0123456789ABCDEF</code>. Using only the letters <code>ABCDEF</code> it is possible to spell several words. Further words can be made by treating some of the decimal numbers as letters – the digit "<code>0</code>" can represent the letter "O", and "<code>1</code>" can represent the letters "I" or "L". Less commonly, "<code>5</code>" can represent "S", "<code>7</code>" represent "T", "<code>12</code>" represent "R" and "<code>6</code>" or "<code>9</code>" can represent "G" or "g", respectively. Numbers such as <code>2</code>, <code>4</code> or <code>8</code> can be used in a manner similar to leet or rebuses; e.g. the word "defecate" can be expressed either as <code>DEFECA7E</code> or <code>DEFEC8</code>.
== Notable magic numbers == {{further|Magic number (programming)}} Many computer processors, operating systems, and debuggers make use of magic numbers, especially as a magic debug value.
{| class=wikitable |- !style="background:#D0E0FF"| Code !style="background:#D0E0FF"| Decimal !style="background:#D0E0FF"| Description |- | <code>0x0000000FF1CE</code> || 1044942 || ("office") is used as the last part of product codes (GUID) for Microsoft Office components (visible in registry under the <code>HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall</code> registry key). |- | <code>0x00BAB10C</code> || 12235020 || ("uber (ooba) block") is used as the magic number for the ZFS uberblock. |- | <code>0x1BADB002</code> || 464367618 || ("1 bad boot"<ref>{{cite web|url=http://ftp.lyx.org/pub/mach/mach4/multiboot/multiboot-archive|title=Multiboot mailing list archive}}</ref>) Multiboot header magic number.<ref>{{cite web|url=https://www.gnu.org/software/grub/manual/multiboot/multiboot.html#Header-magic-fields |title=Multiboot specifications}}</ref> |- | <code>0x4B1D</code> || 19229 || ("forbid") was a password in some calibration consoles for developers to peer deeper into control registers outside the normal calibration memory range.{{citation needed|date=June 2015}} |- | <code>0x50FFC001</code> || 1358938113|| ("soff[t] cool") was used as a Macintosh debug value to help identify nil references, and later to cause bus failures.<ref>{{cite web|url=https://www.inventus.org/posterous/file/2012/07/9621872-out2.pdf|title=Macintosh Technical Notes 1992}}</ref><ref name="cafebaberef"/> |- | <code>0x8BADF00D</code> || 2343432205 || ("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.<ref name="DAC1">{{cite web |url=https://developer.apple.com/iphone/library/technotes/tn2008/tn2151.html |title=Technical Note TN2151: Understanding and Analyzing iPhone OS Application Crash Reports |url-status=dead |archive-url=https://web.archive.org/web/20120705081524/http://developer.apple.com/library/ios/ |archive-date=July 5, 2012 }}</ref> |- | <code>0xABADBABE</code> || 2880289470 || ("a bad babe") was/is used by Microsoft's Windows 7 to trigger a debugger break-point, probably when a USB device is attached<ref>{{cite web|url=https://daniel.haxx.se/blog/2011/10/28/whos-0xabadbabe-and-why/ |title=Who's 0xabadbabe and why?|date=October 28, 2011 }}</ref> |- | <code>0xACE0FBA5E</code> || 46406810206 || ("Ace of Base") Ace of Base is a Swedish pop band, which was very successful in the 1990s. |- | <code>0xB105F00D</code> || 2969956365 || ("BIOS food") is the value of the low bytes of last four registers on ARM PrimeCell compatible components (the component_id registers), used to identify correct behaviour of a memory-mapped component. |- | <code>0xB16B00B5</code> || 2976579765 || ("big boobs") was required by Microsoft's Hyper-V hypervisor to be used by Linux guests as their "guest signature".<ref>{{cite web|url=http://www.spinics.net/lists/linux-driver-devel/msg15311.html|title=Staging: hv: vmbus_drv: Move the content of hv.h to hyperv_vmbus.h}}</ref> One proposal suggested changing it to <code>0x0DEFACED</code> ("defaced"),<ref>{{cite web|url=https://lkml.org/lkml/2012/7/13/261|title=hv: Change the guest ID value}}</ref> but it was instead initially changed to decimal and then replaced entirely.<ref>{{cite web | url=https://github.com/torvalds/linux/commit/83ba0c4f3f317270dae5597d8044b795d119914c | title=Drivers: Hv: Cleanup the guest ID computation · torvalds/Linux@83ba0c4 | website=GitHub }}</ref> |- | <code>0x0B00B135</code> || 184594741|| ("boobies") was likewise required by Microsoft's Hyper-V hypervisor to be used by a user of XEN as their user id.<ref>{{cite web|url=https://github.com/torvalds/linux/commit/3e7ee4902fe6996048f03433dd111426db3cfa92#diff-d25bf4c3508cba9961dd0c195138be2fR62|title=Staging: hv: add the Hyper-V virtual bus|website=GitHub}}</ref> It was removed on January 22, 2010.<ref>{{cite web|url=https://github.com/torvalds/linux/commit/a73e6b7c508f610eeb315c443d9ac79041124af0#diff-d25bf4c3508cba9961dd0c195138be2fL45|title=Staging: hv: Remove xen legacy code and check for Hyper-V|website=GitHub}}</ref> |- | <code>0xBAAAAAAD</code> || 3131746989 || ("baaaaaad") is used by Apple's iOS exception report to indicate that the log is a stackshot of the entire system, not a crash report.<ref name="developer.apple.com">{{cite web | url=https://developer.apple.com/library/ios/technotes/tn2151/_index.html | title=Apple Developer Documentation }}</ref> |- | <code>0xBAADF00D</code> || 3131961357 || ("bad food") is used by Microsoft's LocalAlloc(LMEM_FIXED) to indicate uninitialised allocated heap memory when the debug heap is used.<ref>{{cite web|url=http://www.nobugs.org/developer/win32/debug_crt_heap.html#table|title=Win32 Debug CRT Heap Internals}}</ref> |- | <code>0xBAC0</code> || 47808 || ("bac 0") is the registered BACnet/IP port.<ref>{{cite web|url=https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.txt|title=service-names-port-numbers.txt}}</ref> |- | <code>0xBAD22222</code> || 3134333474 || ("bad too repeatedly") is used by Apple's iOS exception log to indicate that a VoIP application has been terminated by iOS because it resumed too frequently.<ref name="developer.apple.com"/> |- | <code>0xBADDCAFE</code> || 3135097598 || ("bad cafe") is used by Libumem to indicate uninitialized memory area. |- | <code>0xBEEFBABE</code> || 3203381950 || ("beef babe") is used by the 1997 video game ''Frogger'' to detect a stack buffer overflow. |- | <code>0xB000 0xDEAD</code> || 2952847021 || ("boo dead") was displayed by PA-RISC based HP 3000 and HP 9000 computers upon encountering a "system halt" (aka "low level halt").<ref>{{cite web|url=http://www.3kranger.com/HP3000/mpeix/en-mpe60/32650-90851/32650-90851.pdf |title=MPE Error Messages (page 30-66)}}</ref> |- | <code>0xC00010FF</code> || 3221229823 || ("cool off") is used by Apple in iOS crash reports, when application was killed in response to a thermal event.<ref name="DAC1"/> |- | <code>C15C:0D06:F00D</code> || 212601099710477 || ("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. |- | <code>0xCAFEBABE</code> || 3405691582 || ("cafe babe") is used by Plan 9's libc as a poison value for memory pools.<ref>{{cite web| url=https://code.9front.org/hg/plan9front/file/fbd2319ae4be/sys/src/libc/port/pool.c#l126 |title=9front system}}</ref> It is also used by Mach-O to identify Universal object files, and by the Java programming language to identify Java bytecode class files. It was originally created by NeXTSTEP developers as a reference to the baristas at Peet's Coffee & Tea.<ref name="cafebaberef">{{cite web|url=http://www.artima.com/insidejvm/whyCAFEBABE.html |title=Why Cafebabe |publisher=Artima.com |access-date=October 1, 2009}}</ref> |- | <code>0xCAFED00D</code> || 3405697037 || ("cafe dude") is used by Java as a magic number for their pack200 compression.<ref>{{cite web|url=http://download.oracle.com/javase/6/docs/technotes/guides/pack200/pack-spec.html#tocArcHea|title=Pack200: A Packed Class Deployment Format For Java Applications|access-date=November 3, 2010}}</ref> |- | <code>0xCEFAEDFE</code> || 3472551422 || ("face feed") is used by Mach-O to identify flat (single architecture) object files. In little endian this reads <code>FEEDFACE</code>, "Feed Face". |- | <code>0x0D15EA5E</code> || 219540062 || ("zero disease") is a flag that indicates regular boot on the GameCube and Wii consoles.<ref>{{cite web|url=http://hitmen.c02.at/files/yagcd/yagcd/chap4.html#sec4.2.1.1.2|title=Yet Another Gamecube Documentation: Dolphin-OS Globals}}</ref><ref>{{cite web|url=http://wiibrew.org/wiki/Memory_Map|title=Wiibrew: Memory Map}}</ref> |- | <code>0xDABBAD00</code> || 3669732608 || ("dabba doo") is the name of a blog on computer security.<ref>{{cite web|url=http://0xdabbad00.com |title=0xdabbad00.com}}</ref> |- | <code>0xDEAD2BAD</code> || 3735890861 || ("dead too bad") was used to mark allocated areas of memory that had not yet been initialised on Sequent Dynix/ptx systems. |- | <code>0xDEADBAAD</code> || 3735927469 || ("dead bad") is used by the Android libc abort() function when native heap corruption is detected. |- | <code>0xDEADBABE</code> || 3735927486 || ("dead babe") is used by IBM Jikes RVM as a sanity check of the stack of the primary thread.<ref>{{cite web |url=https://svn.sourceforge.net/viewvc/jikesrvm/rvmroot/trunk/tools/bootImageRunner/ia32/libvm.c?revision=15664&view=markup: |title=DEADBABE sanity check |access-date=October 1, 2009 }}{{dead link|date=December 2017 |bot=InternetArchiveBot |fix-attempted=yes }}</ref> |- | <code>0xDEADBEAF</code> || 3735928495 || ("dead beaf") is part of the signature code of ''Jazz Jackrabbit 2'' tileset files.<ref>{{cite web|title=J2T File Format|url=http://www.jazz2online.com/wiki/index.php?J2T_File_Format}}</ref> Level files have less room for their signatures and use <code>0xBABE</code> ("babe") instead.<ref>{{cite web|title=J2L File Format|url=http://www.jazz2online.com/wiki/index.php?J2L_File_Format}}</ref> It is also the header of campaign gamesaves used in the ''Halo'' game series. |- | <code>deadbeef-dead-beef-dead-beef00000075</code> || 29599075508304910171<wbr>2519384016336453749 | ("dead beef") is the GUID assigned to hung/dead virtual machines in Citrix XenServer. |- | <code>0xDEADBEEF</code> || 3735928559 || ("dead beef") is frequently used to indicate a software crash or deadlock in embedded systems. <code>0xDEADBEEF</code> was originally used to mark newly allocated areas of memory that had not yet been initialized—when scanning a memory dump, it is easy to see the <code>0xDEADBEEF</code>. 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. The DEC Alpha SRM console has a background process that traps memory errors, identified by PS as "BeefEater waiting on 0xdeadbeef".<ref>{{cite web|url=http://www.catb.org/~esr/jargon/html/D/DEADBEEF.html |title=DEADBEEF |work=Jargon File |access-date=October 1, 2009}}</ref> |- | <code>0xDEADC0DE</code> || 3735929054 || ("dead code") is used as a marker in OpenWrt firmware to signify the beginning of the to-be created jffs2 filesystem at the end of the static firmware. |- | <code>0xDEADDEAD</code> || 3735936685 || ("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.<ref>{{cite web|url=http://msdn.microsoft.com/en-us/library/ms797162.aspx |title=Bug Check 0xDEADDEAD: MANUALLY_INITIATED_CRASH, MSDN |publisher=msdn.microsoft.com |date=October 1, 2009 |access-date=October 13, 2009 |url-status=dead |archive-url=https://web.archive.org/web/20091002111240/http://msdn.microsoft.com/en-us/library/ms797162.aspx |archive-date=October 2, 2009 }}</ref> This is usually seen by driver developers, as it is used to get a memory dump on Windows NT based systems. An alternative to <code>0xDEADDEAD</code> is the bug check code <code>0x000000E2</code>,<ref>{{cite web|url=http://msdn.microsoft.com/en-us/library/ms797144.aspx |title=Bug Check 0xE2: MANUALLY_INITIATED_CRASH, MSDN |publisher=msdn.microsoft.com |date=October 1, 2009 |access-date=October 13, 2009 |url-status=dead |archive-url=https://web.archive.org/web/20090731130050/http://msdn.microsoft.com/en-us/library/ms797144.aspx |archive-date=July 31, 2009 }}</ref> as they are both called MANUALLY_INITIATED_CRASH as seen on the Microsoft Developer Network. |- | <code>0xDEADD00D</code> || 3735932941 || ("dead dude") is used by Android in the Dalvik virtual machine to indicate a VM abort. |- | <code>0xDEADFA11</code> || 3735943697 || ("dead fall" or "dead fail") is used by Apple in iOS crash reports, when the user force quits an application.<ref name="DAC1"/> |- | <code>0xDEAD10CC</code> || 3735883980 || ("dead lock") is used by Apple in iOS crash reports, when an application holds on to a system resource while running in the background.<ref name="DAC1"/> |- | <code>0xDEADFEED</code> || 3735944941 || ("dead feed") is used by Apple in iOS crash reports, when a timeout occurs spawning a service. |- | <code>0xDECAFBAD</code> || 3737844653 || ("decaf bad") is often found in coding as an easily recognized magic number when hex dumping memory. |- | <code>0xDEFEC8ED</code> || 3741239533 || ("defecated") is the magic number for OpenSolaris core dumps.<ref>{{cite web |url=http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/sys/dumphdr.h#45 |title=Opensolaris header line 45 for 0xDEFEC8ED |publisher=src.opensolaris.org |access-date=July 12, 2011 |url-status=dead |archive-url=https://web.archive.org/web/20110929225516/http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/sys/dumphdr.h#45 |archive-date=September 29, 2011 }}</ref> |- | <code>0xD0D0CACA</code> || 3503344330|| ("doo-doo caca") is the uninitialized value of GPIO values on the Nvidia Tegra X1.{{citation needed|date=March 2016}} |- | <code>0xE011CFD0</code> || 3759263696 || ("docfile0") is used as a magic number for Microsoft Office files. In little endian this reads <code>D0CF11E0</code>, "docfile0".<ref>{{cite web|url=http://support.microsoft.com/kb/318326 |title=Documents That Are Supported by the Office Filter}}</ref> |- | <code>0xF0CACC1A</code> || 4039822362 || ("focaccia") the 8-letter hexspeak word in the dictionary with the highest scrabble score (scoring 17 in the English version). |- | <code>0xF1AC</code> || 61868 || ("FLAC") is used as the Free Lossless Audio Codec's audio format tag.<ref>{{cite web |url=https://docs.microsoft.com/en-us/windows/win32/medfound/audio-subtype-guids |title=Audio Subtype GUIDs – Win32 apps |publisher=Microsoft |date=May 31, 2018 |access-date=March 6, 2021}}</ref> |- | <code>face:b00c</code> || 4207849484 || ("facebook") used in the IPv6 addresses of www.facebook.com.<ref>{{Cite news|url=https://www.theregister.co.uk/2015/07/08/facebook_casts_a_hex_on_dns/|title=Facebook casts a hex with self-referential IPv6|access-date=October 21, 2017|language=en}}</ref> |- | <code>0xFACEFEED</code> || 4207869677 || ("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.<ref>{{cite web|url=http://support.microsoft.com/kb/132349 |title=0xFACEFEED |work=Technet |publisher=Microsoft |date=November 1, 2006 |access-date=October 1, 2009}}</ref> |- | <code>0xFBADBEEF</code> || 4222467823 || ("bad beef") is used in the WebKit and Blink layout engines to indicate a known, unrecoverable error such as out of memory.<ref>{{cite web|url=https://code.google.com/p/chromium/codesearch#chromium/src/third_party/WebKit/Source/wtf/Assertions.h&l=133 |title=Chromium Assertions.h line 133| access-date=March 27, 2014}}</ref> |- | <code>0xFEE1DEAD</code> || 4276215469 || ("feel dead") is used as a magic number in the Linux reboot system call.<ref>{{Cite web |title=reboot.h « linux « uapi « include – kernel/git/torvalds/linux.git – Linux kernel source tree |url=https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/include/uapi/linux/reboot.h |access-date=November 10, 2022 |website=git.kernel.org}}</ref> Other magic numbers to reboot the machine are 672274793, 85072278, 369367448 and 537993216 which in hex translate respectively to 0x28121969, 0x5121996, 0x16041998 and 0x20112000, the birth dates of Linus Torvalds and his three daughters.<ref>{{Cite web |last1=Isaac |last2=Isaac |date=August 4, 2015 |title=Patricia Torvalds: the successor to her father's legacy? |url=https://www.linuxadictos.com/en/Patricia-Torvalds-Linus-Daughter-Aims-Ways.html |access-date=November 10, 2022 |website=Linux Adictos |language=en}}</ref> |- | <code>0xFEEDBABE</code> || 4276992702 || ("feed babe") is the magic number used to indicate the beginning of an OpenRG flash partition descriptor.<ref>{{cite web|url=https://lists.openwrt.org/pipermail/openwrt-devel/2013-June/020315.html|title=OpenWrt-Devel: PATCH – add {{as written|sup|ort [sic]}} for Option GlobeSurfer 3|access-date=December 14, 2015|archive-url=https://web.archive.org/web/20160329221818/https://lists.openwrt.org/pipermail/openwrt-devel/2013-June/020315.html|archive-date=March 29, 2016|url-status=dead}}</ref> |- id="FEEDC0DE" | <code>0xFEEDC0DE</code> || 4276994270 || ("feed code") is used as filling pattern by the OS-9 operating system when initializing its RAM.<ref>{{cite web|url=https://archive.org/stream/os968kOem_v9.9/68k_oem_djvu.txt|title=OS-9 for 68K Processors OEM Installation Manual|date=January 2008 }}</ref> |- | <code>0xFEEDFACE</code> || 4277009102 || ("feed face") is used in Apple's UsbMux protocol packet header magic number for packets sent from host to a device. Packets sent by device to host use <code>0xFACEFACE</code> value. |- | <code>0xFEEDFACECAFEBEEF</code> || 18369614221190020847 || ("feed face cafe beef") is the magic number used to send as a password via serial wire to rescue some NXP created controller devices from boot failures.<ref>{{cite web|url=https://www.nxp.com/docs/en/application-note/AN4674.pdf|title=NXP Application Note: Qorivva Boot Assist Module Application}}</ref><ref>{{cite web|url=https://community.nxp.com/thread/334013|title=NXP Community: Censored Device – Password Known|date=October 30, 2014 }}</ref><ref>{{cite web|url=https://community.nxp.com/thread/325826|title=NXP Community: RAppID boot loader error|date=June 25, 2014 }}</ref> |- | <code>0xFFBADD11</code> || 4290436369 || ("bad DLL"): Used by Windows internally.{{Citation needed|date=April 2019}} |- | <code>0xDEADBEEFBAADF00D</code> || 16045690984229367821 || ("dead beef baad food"): Used as default key / serial number, easily found in Memory, to be edited by the user with his/her own serial numbe / key. |- | <code>0xF00DBABE</code> || 4027431614 || ("food babe"): The Ledger Nano hardware cryptocurrency wallet used this magic number in the process of signing that was exploited.<ref>{{cite web|url=https://www.youtube.com/watch?v=nNBktKw9Is4 |archive-url=https://ghostarchive.org/varchive/youtube/20211212/nNBktKw9Is4| archive-date=December 12, 2021 |url-status=live|title=LiveOverflow@YouTube: Hardware Wallet Hack: Ledger Nano S|website=YouTube|date=December 28, 2018 }}{{cbignore}}</ref> |}
== Alternative letters == Many computer languages require that a hexadecimal number be marked with a prefix or suffix (or both) to identify it as a number. Sometimes the prefix or suffix is used as part of the word. * The C programming language uses the "0x" prefix to indicate a hexadecimal number, but the "0x" is usually ignored when people read such values as words. C also allows the suffix L to declare an integer as <code>long</code>, or LL to declare it as <code>long long</code>, making it possible to write "0xDEADCELL" (dead cell). In either case a U may also appear in the suffix to declare the integer as <code>unsigned</code>, making it possible to write "0xFEEDBULL" (feed bull). * In the (non-Unix) Intel assembly language, hexadecimal numbers are denoted by a "h" suffix, making it possible to write "0beach" (beach). Note that numbers in this notation that begin with a letter must be prefixed with a zero to distinguish them from variable names. A Unix-style assembler uses C language convention instead (but non-Unix-style assemblers are also available on x86 Unix-type OSes). * Visual Basic and all previous Microsoft BASICs such as QuickBasic, GWBasic, BASICA and ColorBASIC, use a &H prefix, for example, "&HEADED" (headed) and "&HADC0FFEE" (had coffee). * In Pascal and several assembly languages (6502, 6809,...), hexadecimal numbers are denoted by a "$" prefix. This allows for words starting with the letter "S", for example "$EED" (seed). * In B3-34 programmable calculators, an alternative hexadecimal alphabet was used, where the symbols "−", "L", "C", "Г", "E", and " " (space) were used instead of Latin letters. Using these, it was possible to display messages like "EГГ0Г" (error).
== PlayStation 3 RSX ==
In reverse engineering aspects of the Sony PlayStation 3, a number of hexspeak codes were found to either trigger, affect or were present in aspects of communicating to and through the PlayStation 3 Hypervisor in communication to its GPU, the RSX Reality Synthesizer.<ref name="hexspeak_rsx">{{cite web|url=http://www.psdevwiki.com/ps3/RSXFIFOCommands |title=RSXFIFOCommands – PS3 Developer Wiki|publisher=psdev wiki|date=May 20, 2014|access-date=November 1, 2017}}</ref>
These projects were largely born out of PS3 homebrew operating on the PS3's OtherOS which allowed Linux to be installed, initially with extremely limited GPU access.
{| class=wikitable |- !style="background:#D0E0FF"| Code !style="background:#D0E0FF"| Description |- | <code>0x1337BEEF</code>, <code>0x1337F001</code>, <code>0x1337BEEF</code>|| Found as part of the RSX Descriptor. |- | <code>0xF00DBEEF</code> || The RSX Semaphore Value |- | <code>0x1337C0D3</code> and <code>0x1337BABE</code> || Begin semaphore value and pad, from the system.<ref name="rsx_control">{{cite web|url=https://github.com/RPCS3/rpcs3/blob/master/rpcs3/Emu/Cell/lv2/sys_rsx.cpp |title=rpc3/sys_rsx.cpp|publisher=RPCS3 on github|date=October 28, 2017|access-date=November 1, 2017}}</ref> |}
== See also ==
* Leet * file (command)
== References == {{Reflist|30em}}
==External links== * [http://www.datagenetics.com/blog/march32013/index.html List of real 3 to 7 hex character English words] * [http://bada55.io/ BADA55.io – CSS hex color words for web developers] * {{cite web |url=https://www.paulirish.com/2009/memorable-hex-colors/ |title=Memorable Hex Colors |author=Paul Irish |author-link= |date=December 4, 2009}}
Category:Source code Category:Nonstandard spelling Category:Computer humour Category:Hexadecimal numeral system