**Hexadecimal**

From Wikipedia, the free encyclopedia.

**Hexadecimal** (often abbreviated *hex*) is a base 16 numeral system, usually written using the symbols 0-9 and A-F. It is a useful system in computers because there is an easy mapping from four bits to a single hex digit. Thus one can represent every byte as two consecutive hexadecimal digits. Compare the binary, hex and decimal representations:

bin hex dec 0000 = 0 = 0 0001 = 1 = 1 0010 = 2 = 2 0011 = 3 = 3 0100 = 4 = 4 ... 1001 = 9 = 9 1010 = A = 10 1011 = B = 11 ... 1111 = F = 15So the decimal numeral 79 whose binary representation is 0100 1111 can be written as 4F in hexadecimal.

There are many ways to denote hexadecimal numerals, used in different programming languages:

- Ada and VHDL enclose hexadecimal numerals in based "numeric quotes", e.g. "16#5A3#". (Note: Ada accepts this notation for
*all*bases from 2 through 16 and for both integer and real types.) - C and languages with a similar syntax (such as Java) prefix hexadecimal numerals with '0x', e.g. "0x5A3". The leading '0' is used because numbers must start with a numeric character, and the 'x' stands for hexadecimal.
- Pascal and some Assemblers indicate hex by an appended 'h' (if the numeral starts with a letter, then also with a preceding 0), e.g., "0A3Ch", "5A3h".
- Other assemblers (AT&T, Motorola) and some versions of BASIC uses a prefixed '$', e.g. "$5A3".
- Some versions of BASIC prefix hexadecimal numerals with "&h", e.g. "&h5A3".
- When talking about numeral systems other than base-10, or numerals in multiple bases, mathematicians write the base in subscript after the number, e.g. "5A3
_{16}" or "5A3_{SIXTEEN}".

The word "hexadecimal" is strange in that *hexa* is derived from the Greek έξι (exi) for "six" and *decimal* is derived from the Latin for "ten". An older term was the pure Latin "sexidecimal", but that was changed because some people thought it too racy, and it also had an alternative meaning of "base 60".

### Fractions

The hexadecimal system is quite good for forming fractions:

- 1/2 = 0.8
- 1/3 = 0.5555 recurring
- 1/4 = 0.4
- 1/5 = 0.3333 recurring
- 1/6 = 0.2AAAA recurring
- 1/8 = 0.2
- 1/A = 0.19999 recurring
- 1/C = 0.15555 recurring
- 1/F = 0.1111 recurring

See numeral system for a list of other base systems.