GK

Octal

Home
Chart
Constants
Formula
Vedic
Numbers
Length
Converter
Speed
Weight

Octal (8)

The octal numeral system is the base-8 number system, and uses the digits 0 to 7.

It is reported that the Yuki Native Americans of California used an octal system because they counted using the spaces between their fingers rather than the fingers themselves. Octal counting may have been used in the past instead of decimal counting, by counting the spaces like the Yuki or by counting the fingers other than the thumbs. This may explain why the Latin word novem (nine) is so much like the word novus (new). It may have meant a new number.

Donald Knuth wrote in his book The Art of Computer Programming that King Charles XII of Sweden was the inventor of octal in Europe. Octal numerals can be made from binary numerals by grouping consecutive digits into groups of three (starting from the right). For example, the binary representation for decimal 74 is 1001010, which groups into 1 001 010 — so the octal representation is 112.

Octal is sometimes used in computing instead of hexadecimal, perhaps most often in modern times in conjunction with file permissions under UNIX systems (see chmod). It has the advantage of not requiring any extra symbols as digits (the hexadecimal system is base-16 and therefore needs six additional symbols beyond 0–9). It is also used for digital displays.

At the time when octal originally became widely used in computing, systems such as the IBM mainframe employed 24-bit words. Octal was an ideal abbreviation of binary for these machines because eight digits could concisely display an entire machine word (each octal digit covering three binary digits).

All modern computing platforms, however, use 16-, 32-, or 64-bit words, with eight bits making up a byte. On such systems three octal digits would be required, with the most significant octal digit inelegantly representing only two binary digits (and in a series the same octal digit would represent one binary digit from the next byte). Hence hexadecimal is more commonly used in programming languages today, since a hexadecimal digit covers four binary digits and all modern computing platforms have machine words that are evenly divisible by four.