You may be interested to know that the Russians developed a chip that was ternary, instead of binary. That means that each symbol could have the values of -1
, 0
, or 1
. So each physical gate could store "three" values, instead of "two".
Potential future applications
With the advent of mass-produced binary components for computers, ternary computers have diminished in significance. However, Donald Knuth argues that they will be brought back into development in the future to take advantage of ternary logic's elegance and efficiency.
As you start to suspect, there may be a more efficient way to implement a base numbering system. (Although this ability to express this more efficiently depends on our ability to physically manufacturing on material.) It turns out that the constant e
, the base of natural log (~2.71828), has the best radix economy, followed by 3, then 2, then 4.
Radix economy is how much number you can represent versus how many symbols you need to take up to do it.
For instance, the mathematical number three is represented as 3
in base 10, but as 11
in base 2 (binary). Base 10 can express larger numbers with less symbols than binary can, but the symbol table of base 10 is 5x larger (0...9) than the symbol table of base 2 (0, 1). Comparing the expressive power to the size of the symbol set is called "radix economy" (radix being the number of the base, for example, 2 in binary, or "base 2"). The natural question that follows is, where do I want to be in terms of this tradeoff? What number should I adopt as the radix? Can I optimize the tradeoff between expressive power and size of symbol set?
If you look at the chart in the radix economy article in wikipedia, you can compare the economies of various bases. In our example, base 2 has a radix economy of 1.0615, while base 10 has an economy of 1.5977. The lower the number the better, so base 2 is more efficient than base 10.
Your question of base 4 has an efficiency of 1.0615, which is the same size as base 2 (or binary), so adopting it over base 2 only gets you the exact same size of storage per number, on average.
If you're wondering, then is there an ideal number to adopt as a base, this chart shows you that, it's not a whole number, but the mathematical constant e
(~ 2.71828) which is the best, having an economy of 1.0. This means that it's efficient as possible. For any set of numbers, on average, base e
will give you the best representation size of it, given its symbol table. It's the best "bang for your buck".
So, while you think your question is perhaps simple and basic, it is actually subtly complex, and a very worthwhile issue to consider when designing computers. If you could design an ideal discrete computer, using base 4 offers the same deal-- the same space for cost-- as binary (base 2); using base 3, or ternary, offers a better deal over binary (and the Russians did build a physical, working computer with base 3 representation in transistors); but ideally, you would use base e. I don't know if anyone's built a working physical computer with base e, but mathematically, it would offer a better deal of space over binary and ternary-- in fact, the best deal out of all the real numbers.