If you think in terms of voltage on a pin, how you would implement ternary? Binary is simple: 0V, or 5V (at least a long time ago...). Transitioning from one state to the other is obvious. How would you do it with ternary logic?
It's completely possible, but it's just not worth it. The information density of ternary is higher than binary, sure, but you now need 3 states to represent it. This applies to ternary vs base 4, and so on. As it turns out, it's been proven that binary has the optimal ratio of info density to symbols, and any higher of a base gives you no net benefit. Unfortunately I don't have a link to the proof on hand, but if someone else does I'd appreciate it.
We would also lose decades of knowledge on binary operations and how best to do it. Two's complement is out the window, for instance.
Additionally, the entire CS mindset is built around boolean logic. Exclusive-or, for instance, makes no sense when you remove binary operation. There's not much to gain from it either, since any sort of ternary operation can be implemented as a binary operation without that much overhead.
I think the optimal base is actually the natural log e, or about 2.71. I saw a derivation of this before but can't find the reference. Ternary actually comes about a bit better from an information density standpoint, but all the other points you made about difficulties with base 3 and benefits of base 2 still stand.
11 comments
[ 3.2 ms ] story [ 32.2 ms ] thread:-)
Do negative voltages exist?
Positive voltage, negative voltage, no voltage
Ternary allows for measurements of relativity at the pin level whereas binary is a yes/no...
When engineers implement base-4 logic, will they call it quits?
We would also lose decades of knowledge on binary operations and how best to do it. Two's complement is out the window, for instance.
Additionally, the entire CS mindset is built around boolean logic. Exclusive-or, for instance, makes no sense when you remove binary operation. There's not much to gain from it either, since any sort of ternary operation can be implemented as a binary operation without that much overhead.
Could a binary computer teach itself to build ternary circuits?
Base(4) is effectively base~2, base_e is purportedly optimal, base`pi is compelling
Is 3 a concept best grasped by humans?
binary within ternary or ternary within binary?