Well, that's a help, but as is often the case, a little progress in one direction merely brightens the light on a related problem still unsolved. The related problem here is the problem of subvocalization. All of us are lip readers; even if the motion of the lip muscles is so thoroughly suppressed as to be invisible to the naked eye, the larynx is still forming the sounds of everything we read-or think, for that matter. And groups like oneoneone comma oneoneoneohoh comma oneoneohoneone simply do not pronounce well.
But being able to state a problem is progressing far toward solving it. It is apparent that there is no difficulty involved in assigning more pronounceable phonetic values to the parts of binary notation.
One such system is, in fact, already widely in use. If you walk into the Bank of Ireland Bar in Chelsea on a noisy night, you may come across a couple of Merchant Marine officers having a relaxed and private conversation which is not subject to either eavesdropping or interference, regardless of the surrounding noise. If you do, they are probably radiomen, and they are talking to each other in code. For the dots and dashes of Morse there is a well-established pronouncing convention: "Dit" is a dot, "Dah" is a dash. If we merely appropriate this convention for our binary numbers, we may sacrifice some efficiency-no doubt an even more compact and clear system could be worked out from basic phonetic principles. But it offers a very special advantage: It works. We don't have to test it or doubt it; we know it works; it has worked all over the world for countless radio operators for a period of decades.
Let us then pronounce "1" as "dit" and "0" as "dah." 111,11100,11011 then becomes dididit didididahdah dididahdidit - And we notice something odd. We already conceded that the binary system had an intrinsic drawback in that its terms were by definition always less compact than the decimal.
Yet if we wish to transmit the decimal number 8091 in Morse code, it must be expressed like this: dahdahdahdidit dahdahdahdahdah dahdahdahdahdit didalhdahdahdah. That is, four groups, each comprising five "bits," or 20 "bits" in all.
But its binary equivalent needs only three groups totalling 13 "bits," as we have just seen.
Our concession was evidently premature. In this one special case, at least-and it is far from an unimportant one-the binary system can be made more compact than the decimal.
Having found one such case, let us be encouraged enough to look for more.
When I was around ten, we kids used to kill time on long auto rides by playing a game of counting. We would pick a common phenomenon-cows or Fords or "For Sale" signs on farms-and see who, in a given period, had spotted the most. It almost always kept us quiet and out of the driver's hair for the first mile or two-and almost never beyond that.
The trouble was that we counted on our fingers. That worked beautifully for numbers up to ten, of course. It worked passably for numbers up to 20, or even to 30-it wasn't much of a trick to remember that we were on the second or third go-around of finger-counting. But when we got to numbers much above that, we began to rely pretty heavily on our individually differing memories of just how many times we had counted up to ten, and that's when the fights would start.
Naturally, we were counting by the decimal system.
Could we have done better with the binary?
Spread out the ten fingers on your two hands before you (don't let's get into semantic arguments about whether or not a "thumb" is a "finger" - you know what I mean), and let's see what can be done with them.
We start by establishing a convention. An extended finger is a "1." A retracted finger is a "0."
Clench your fists and begin to count:
Extend the right little finger. That is 1-in both binary and decimal notation.
Retract the little finger and extend the right ring finger. Read it as 10 (or, in decimal notation, two).
Keep the ring finger out and extend the little finger beside it. Read: 11 (Decimal notation, three.)
Retract both those fingers and extend the middle finger of the right hand. Read: 100 (binary) or four (decimal).
And so on. You may find that waggling your fingers like this requires practice or natural flexibility-unless, of course, you make it easy on yourself by resting the fingers against the edge of a table.
Your fingers are now indeed "digits," and you are using them in positional notation. Observe that you can represent any number from 00000,00000 (both hands clenched) to 11111,11111 (both hands extended). Next time you want to count a reasonably large number - say, the number of cars ahead of you in a tunnel jam, or the number of hits against a Met pitcher - you might try this system. It's good anywhere from 0 to 1023. Indeed, by a few obvious extensions - for instance, by adding on successively extended or retracted positions of the wrists, elbows, and so on - you can soon reach numbers beyond which you are never likely to count.
Moreover, your running total is available to you at any time (as it is not in the decimal system of finger counting, for instance, where you must count the fingers themselves to get such a total); you merely read it off. Suppose, for instance, you are out hiking with a companion (having lost your pedometer, let us say), and your friend wants to know how many paces you can go in a given period of time. You keep count on your fingers, and at the end of the time you see you have the little finger, index finger, and thumb of the left hand, and the thumb and ring finger of the right hand extended. Reading off your hands according to our established convention, you find you have come 10011,10010 paces, and you pass on the information to him according to the pronouncing convention: "didahdahdidit didahdahdidah."
Of course, your friend may be a square who still uses the old stickin-the-mud decimal system, so you may want to translate for him. That's easy enough if you remember the decimal equivalents of each of the fingers:
Left Hand
Little finger: 2^9 = 512
Ring finger: 2^8 = 256
Middle finger: 2^7 = 128
Index finger: 2^6 = 64
Thumb: 2^5 = 32
Right Hand
Thumb: 2^4 = 16
Index finger: 2^3 = 8
Middle finger: 2^2 = 4
Ring finger: 2^1 = 2
Little finger: 2^0 = 1
Accordingly, to convert your finger count into decimal figures, just add up the finger equivalents given above; for the aforementioned 10011,10010, read:
Left little finger: 512
Left index finger: 64
Left thumb: 32
Right thumb: 16
Right ring finger: 2
===
626
And inform your friend you have come 626 paces.
As promised, we have found another case where an ingenious use of binary notation is actually more compact than decimal-by a factor of 100, as it turns out. Let us turn, then, away from the demolished "drawbacks" of binary notation in order to take a quick look at some of its more attractive features.
We recall that it has already been demonstrated that binary arithmetic is about as simple as arithmetic can get. That is what makes it so uniquely right for UNIVAC, but even on a less complicated level of computer design, it presents lovely aspects. Think, for example, of the beautifully compact desk adding machine that might be designed for binary numbers. No wheels and gear trains-therefore, at least for normal-sized calculations, no necessity for a power source to drive them. To handle addition or subtraction of, say, ten-place numbers (and multiplication and division are only slightly more demanding) you need only a row of ten levers with an up ("1") and down ("0") position. Of course, you wouldn't have to spend much money on a calculator as simple as that. You could build it yourself. Or alternatively, you could merely use the built-in ten-place binary computer we've just been talking about, the one that grows out of the ends of your arms.