Why ASCII Ran Out of Room
A seven-bit code can represent 128 distinct values because each bit has two possible states: 2⁷ combinations in all. ASCII assigned those values to more than just visible letters. Some are control codes—signals originally used to manage devices such as printers and terminals—while others represent punctuation, digits, and the familiar English alphabet. That left no slots for accented letters such as “é,” let alone writing systems with hundreds or thousands of characters.
The limitation reflects ASCII’s original purpose: a compact standard for exchanging basic text and control instructions among early computers and communications equipment. It was not designed as a universal alphabet.
The Extra Bit Wasn’t a Universal Fix
Many computers stored data in eight-bit bytes, leaving one bit beyond ASCII’s seven. That spare capacity encouraged “extended ASCII” character sets, which used the extra bit to add characters such as accented letters or box-drawing symbols. But different systems assigned those added values differently. A byte that displayed an accented letter on one computer could appear as a different character on another.
So the problem was not simply a shortage of storage. Computers also needed to agree on what each value meant. Adding more slots without a shared mapping could make text unreadable when it moved between systems.
From Local Character Sets to Unicode
Unicode addressed the larger challenge by giving characters from many languages a common numbering system. UTF-8, a widely used way to store Unicode text, keeps the original ASCII values unchanged: basic English text remains compact and works with older ASCII-aware software, while other characters use additional bytes.
That compatibility is why ASCII still matters. Its 128 slots remain the foundation for a small, reliable core of text, but a modern multilingual message can extend beyond that core without relying on each computer to invent its own additions.






