The bit
The smallest unit of data in a computer is the bit, short for “binary digit.” A bit holds one of two values, usually written 0 and 1. The word is often credited to the statistician John Tukey, and it became widely known after Claude Shannon used it in his well-known work on information theory in the late 1940s. A single bit does not say much, but groups of bits can represent numbers, letters, colors and instructions.
The reason computers are built around bits is practical. Electronic parts with two clear states, such as on and off, are typically easier to make reliable than parts that must distinguish many levels. That design choice is explored further when looking at binary numbers and why computers use them.
The byte
A byte is a group of bits handled as one unit. Today a byte is almost always eight bits, and eight bits can form 256 different patterns, because each added bit doubles the number of possibilities: 2 multiplied by itself eight times is 256. That is enough to give each letter, digit and common symbol in a basic text code its own pattern, which is one reason the eight-bit byte caught on.
It was not always fixed at eight. In the early decades, different machines used different group sizes for their basic characters, and the word “byte” was in use by the 1950s at IBM, where it is usually credited to Werner Buchholz. The spelling with a “y” is generally explained as a way to avoid confusion with “bit” when written or misread. Eight-bit bytes became the common standard over time, and writers who want to be unambiguous sometimes use the term “octet” for exactly eight bits.
Nibbles, words and other groupings
Some other terms appear in older material:
- Nibble. Half a byte, or four bits. It is a playful term, and it is handy because four bits map neatly onto one hexadecimal digit.
- Word. The natural chunk of data a particular processor handles at once. Its size varies by design. Machines have used word sizes such as 16, 32 and 64 bits, and earlier machines used other sizes.
- Character. A letter, digit or symbol. How many bits a character needs depends on the encoding in use, a topic covered under character encoding.
Because “word” depends on the machine, a statement such as “a 16-bit computer” refers to the width its processor typically works with, not to a universal unit.
Kilo, mega and giga
For larger amounts, computing borrowed metric prefixes. In the metric system, kilo means 1,000, mega means 1,000,000 and giga means 1,000,000,000. But computer memory is naturally organized in powers of two, and 2 to the tenth power is 1,024, which is close to 1,000. Early engineers began calling 1,024 bytes a kilobyte, as a convenient shorthand.
That shortcut worked at small scales but drifted as numbers grew. With powers of two, a megabyte was 1,024 times 1,024, which is 1,048,576 bytes. With the metric meaning, it is exactly 1,000,000 bytes. The gap is about five percent at the mega level and grows a little with each step up. The same prefix therefore came to mean two slightly different sizes depending on who was using it.
Why the confusion stuck
Different parts of the industry settled into different habits. Memory chips are built in power-of-two sizes, so memory is typically described using the 1,024 convention. Makers of storage devices often use the metric meaning, where a gigabyte is a round billion bytes. Operating systems have sometimes shown sizes using one convention while a storage label used the other, which is why a drive can appear a little smaller on screen than the number on its box. The drive is not necessarily missing space; two counting systems are being compared.
The attempted fix
To remove the ambiguity, standards bodies introduced separate names in the late 1990s for the power-of-two versions: kibibyte, mebibyte and gibibyte, abbreviated KiB, MiB and GiB. A kibibyte is exactly 1,024 bytes. The names have been adopted in some technical settings and software, but they never fully replaced the older usage in everyday speech, so context still matters.
Bits per second versus bytes
One more point of confusion involves speed. Network connections are traditionally described in bits per second, with a lowercase “b,” while file sizes are described in bytes, with an uppercase “B.” Since a byte is eight bits, a connection of 100 megabits per second can in theory move at most 12.5 megabytes per second, because 100 divided by 8 is 12.5. Real transfers are usually slower than that theoretical figure because of overhead and other factors.
Reading units with care
When a size or speed appears in an old article or a product description, a few questions help. Is the letter b or B? Does kilo mean 1,000 or 1,024 here? And what did a byte or word mean on that particular machine? Asking these keeps the arithmetic honest, and it explains why numbers that look slightly off often are not mistakes at all, just different conventions meeting.