Earthbound Light - Nature Photography from the Pacific Northwest and beyond by Bob Johnson
Online Ordering
Recent Updates

Photo Tip of the Week

TIFF Byte Order: Mac or PC?

When saving an image as a TIFF file in Photoshop, you have to pick whether you want to use IBM PC or Macintosh byte order. While you might think your choice would depend on which platform you use, such is not really the case.

By way of explaining what I mean, we first have to understand what this whole business of byte order itself means. Regardless of platform, a byte consists of eight bits on modern computers. That means if you are dealing with numbers greater than 255, you will need more than one byte for each. While the image data in a 16-bit per channel file obviously require two bytes to represent each color value, it's less obvious that even 8-bit images require 16-bit values internally for some purposes. Beyond the data you want to store, the content of any file, TIFF or otherwise, includes control structures, offsets and other bits and bytes used to allow programs to understand what they contain. Much of this internal data requires 16-bit numbers even if the bulk of what the file contains in an 8-bit image.

When you store a 16-bit number you need two bytes. You would think that the whole world could agree that when doing so the first byte should come first and the second one second. But the complication comes from not agreeing on which end of a number we are counting from.

Within a byte, every computer out there numbers the bits from right to left, as dictated by the binary number system. If we start with any given bit, the bit to its left represents a value twice as big as does the bit we started with. But when we run out of bits in that byte, which byte do we go to next?

If we follow the number convention of bits within a byte, the next byte should be the one to our left. But if we kept that up, it would seem we'd end up reading the file backwards — starting at the far right and proceeding to the left until we got to what would otherwise seem more like the "beginning" than the "end." I mean, most western languages teach us to read from left to right, so this idea of reading numbers from right to left seems somewhat backwards.

Or least it must have to at least some early computer designers. One camp stuck with the rigid right to left byte ordering, carried over from the bit-within-a-byte ordering dictated by binary numbering. The other camp though decided that it made more sense to order bytes from left to right rather than be tied to the bit ordering precedent. Either could work of course, and in the early days of computers no one even thought about sharing data between computers so there was no reason everyone needed to agree.

These two camps are known as Big Endian and Little Endian. Big Endian refers to the convention of numbering bytes the way bits are numbered, from right to left, while Little Endian architectures number bytes in increasing significance from left to right. The origin of the term Endian comes interestingly enough from Jonathan Swift's Gulliver's Travels. In the land of Lilliput, one group of people (the Big Endians) preferred to break their eggs at the big end while others (the Little Endians) considered it more proper to break them at the little end. This simple disagreement caused a good deal of turmoil, resulting in a serious of rebellions and fighting. People died and emperors lost their crowns. Breaking eggs became a big deal indeed. The debate about which byte ordering never got quite this bloody, but the funny name stuck nonetheless.

As you might by now have guessed, the Motorola chips used by early Macintosh computers and the Intel chips long used on the IBM PC side of the computer world evolved from different camps in the byte ordering debate. Intel x86 architecture uses Little Endian byte ordering while Motorola 68000 and similar chips are based on Big Endian.

Now that Apple has switched to Intel chips you'd think this whole byte ordering debate would go away and perhaps it would if software makers didn't want to retain compatibility with older versions of their programs. As such, even though Mac computers now inherently use Little Endian as do their PC brethren, the byte ordering question lives on.

Back to TIFF files, the whole question of byte ordering becomes even less meaningful. The TIFF internal format stores which ordering you used when creating a file and most software out there honors and understands both orderings. This is true for both PC and Mac. Unless you are using old software made for one platform to read a file saved in the byte order that originated on the other platform, you are unlikely to encounter a problem no matter which byte ordering you go with. Adobe keeps this option purely for backward compatibility. I suppose you can't save a TIFF file without breaking a few eggs. But no matter which end you choose to crack your eggs on, they still come out tasting the same.

Date posted: July 19, 2009


Copyright © 2009 Bob Johnson, Earthbound Light - all rights reserved.
Permanent link for this article

Previous tip: The Filter Trap Return to archives menu Next tip: Digital Editing: Where Do You Draw The Line?

Tweet this page       Bookmark and Share       Subscribe on Facebook via NetworkedBlogs       Printer Friendly Version

Machine translation:   Español   |   Deutsch   |   Français   |   Italiano   |   Português

A new photo tip is posted each Sunday, so please check back regularly.

Support Earthbound Light by buying from B&H Photo
  Buy a good book
Click here for book recommendations
Support Earthbound Light
  Or say thanks the easy way with PayPal if you prefer

Home  |  About  |  Portfolio  |  WebStore  |  PhotoTips  |  Contact  |  Comments  |  Updates  |  Support
Nature Photography from the Pacific Northwest and beyond by Bob Johnson

View Cart  |  Store Policies  |  Terms of Use  |  Your Privacy