0% Interest for 36 Months! Learn more »
(800) 222-4700
  • Español: (800) 222-4701
Cart
Presidents' Day Sale!

Endian

Refers to the order and value of the bits comprising a number. Binary numbers are made up of 1s and 0s. A typical eight bit binary number looks like this: 1001 0101. Using a little endian system, the leftmost bit represents a high value or MSB, while the rightmost bit represents a small value, or the LSB. So a 1 in the rightmost position (0000 0001) represents the number 1 whereas a 1 in the leftmost position (1000 0000) represents 128. Using eight bits, any number from 0 to 255 may be represented.

A big endian system orders the bits in the other direction. In this case, a 1 in the rightmost bit (0000 0001) has the value of 128, and is considered the MSB, while a 1 in the leftmost bit (1000 0000) has the value of 1.

Generally, PCs use a little endian system, while Motorola CPU based Macs use a big endian system. Popular UNIX systems started on Motorola processors and continued with RISC designs that were all big-endian. For this reason, the Internet is based upon big-endian network protocols. This is known as “network byte order”.

The name “endian” comes from Swift’s story Gulliver’s Travels, in which he is satirizing the Protestant vs. Catholic conflict in England during his time. In the story Lilliput is divided into two warring contingents. The “big-endians” believe that eggs should be broken at the larger end in the traditional way. However, the Emperor has decreed that all his subjects should break their eggs on the smaller end.

In 1980, Danny Cohen published a paper entitled “On Holy Wars and a Plea for Peace” where he draws a parallel between the silly wars over how to crack an egg and the silly wars over the “proper” ordering of bytes in memory. Since that time, people have begun to refer to the alternate byte orderings as “little-endian” and “big-endian”.

Share this Article