This page is about numerical calculators. A numerical calculator is a machine that works with numbers in a deterministic way. Counting on your fingers is using a crude numerical calculator. A slide-rule is not a numerical calculator, it makes approximations to physical quantities in mapping them to distances along a scale, it does not always give the same answer to the same calculation. I would also not count log tables, as they are also an approximation. Scientific calculators, using real (floating point) numbers and transcendental functions (square root and beyond) can also only be approximate, although many modern ones can keep intermediate results in an exact mathematical form throughout, simplifying when possible, and only calculate an approximate numerical result when required.
Although these days calculators are actually general purpose computers with fixed programs, they are distinct in their function by being specialised for numeric processing and nothing else, and by their instant availability.
The abacus is a simple mechanical calculator.
Basic abacus, set to 15171
All the abacus does is to store a number. It performs no operations on the stored number. The user of an abacus must be familiar with a set of rules that indicate how to add or subtract a new number from the number stored. This is done digit by digit, the new state of each digit being based on the current stored value and the corresponding digit in the new number. The abacus offers a little help over just working out all one-hundred combinations of stored digit and new digit by having more beads than it takes just to store a number: there are five "1" beads and two "five" beads in each position. This ensures that a carry ahead of 1 or -1 can be done without the possibility of it propagating beyond the next digit to the left, until that digit's turn arrives.
The mechanical calculator shown below is not much different from the abacus, in that it merely stores one number, but it offers a little more help on the process of adding or subtracting a new number.
The device is operated by a pointed stylus, shown clipped to the right hand side. Pulling the bar at the top resets all digits to zero. The first number is entered by placing the stylus into the tooth indicated by the digit scale and pulling downwards; the digit will then show in the central window. To add another number, the same process is used, except that if the appropriate tooth for the new digit is red, then the stylus must be moved upwards, around the loop at the top, and down the other side to carry one into the next highest digit. If the next highest digit is already a 9, then a carry into it will show in the window as an arrow pointing upwards. When this occurs, the stylus must be placed in the 0 tooth for that digit and moved right up and around to carry one into the next digit. If you try to add 1 to say 199999 then you will have to do this four times before the result shows as 200000 (successively: 199999 - 1999^0 - 199^00 - 19^000 - 1^0000 - 200000). Subtraction is much the same except that the lower set of teeth are used, movement is upwards for white teeth and downwards for red, carry involves going right to the bottom and back up again, and overflow shows as a downwards arrow corrected by a full downwards movement. In the UK, these instruments were mostly used for money, and they were specially-designed for the eccentric English currency of the time, with three decimal columns for pounds, two columns for shillings with the left-hand only having 0 and 1 (20 shillings to a pound) and a single column for pence with slightly smaller teeth to allow numbers up to 11 (12 pence to a shilling). I had to try quite hard to get a pure decimal version. The UK changed to decimal money only in February 1971. Fortunately this was before the electronic calculator became widely available, otherwise I expect we would have had to buy specials for the UK market to do money calculations. Before 1971 I used to use a slide rule when abroad for quick currency conversion, but of course this required mental conversion to decimal and back. |
Kingson calculator (~1965) |
The next level calculators perform more of the process. In these, each multi-digit addition is reduced to one turn of a handle. Below is a crude diagram of the arrangement of these devices.
The lower part is a register for storing the result of the calulation. It is analagous to the sliders in the simple machine above. The upper part is a collection of levers on which the number to add is set. In the diagram the levers are set to add 38235. If the handle is then rotated one turn clockwise, this number is added into the register, as shown. The single turn does all of the addition process, including any carries. Anticlockwise rotation of the handle does subtraction from the register.
The simplicity of addition allows the machine to be used easily for multiplication. The register is able to slide sideways relative to the setting levers, as shown by the arrows; this is controlled by a lever conveniently placed under the handle. To multiply say 456 by 123 we set 456 in the levers, position the register with the units columns aligned and turn the handle 3 times clockwise, the register will then show 1368. Then we move the register one place to the right so that the unit lever aligns with the tens digit in the register and turn the handle twice clockwise, adding 20 * 456 to show 10488. Then one more shift to the right and one turn give the result of 56088. This is easy to do and quick. There are speed-up tricks: rather than do a 9 digit as 9 turns clockwise, it is better to do 1 turn anticlockwise and an extra turn clockwise in the next highest position, which a good operator will do in her head.
Division is also possible though a little more tedious. The register is loaded with the dividend via the levers, then the levers are set to the divisor and the register shifted to start subtracting from the most significant end, turning anticlockwise until the register rolls around then back one, and repeating at the next digit down. Some machines had handle turn counters that took account of register position, so rather than having to count turns, the quotient would appear on the counter at the end of the process.
I only just overlapped with the days of these machines. We had one at school which a privileged few were allowed to use. I remember on school trips abroad in the late sixties seeing them used at the money changing counters in European banks. I think ours was a Brunsviga.
In my first year at university, mechanical calculators were still available for students if you knew who to ask. These were much better machines with motors, could be driven from a numeric keyboard rather than setting levers, and had function buttons for multiplication and division. They needed help though. If you naively asked them to divide say 1000 by 1 they would quite happily start off to count how many times they could subtract 1 from 1000 before they got to zero. And of course division by zero would go on for ever. By my second year these were replaced for students by the earliest electronic machines and then by an HP pocket calculator screwed to the bench.
The first electronic calculators that I met were about the size of a large typewriter, with a simple numeric and function keypad not far different from a modern 4-function and a row of Nixie tubes for display. Unlike modern machines, the decimal point stayed at the same place in the display. The keys worked normally with infixed multiplication and division operator keys, but addition and subtraction were effectively post-fixed by using positive or negative equals keys. By the time I got out to work, there were starting to appear even bigger electronic machines such as the Hewlett Packard 9830, which were more like little computers, could be programmed in Basic, and had tape storage of data and programs.
The pocket calculator progressed rapidly from about 1975 onwards, from an esoteric tool for scientists into an everyday tool. The construction changed from complex electronics to single-chip, keyboards were improved and simplified. At first displays were universally LED, until vacuum-fluorescent appeared briefly before LCD took over completely. Early models ate batteries, especially for the display; the arrival of LCD cured that, so that a small button cell could last a year or two, or the power from a small solar cell could be used.
Sinclair Cambridge Programmable (~1977) |
My first electronic of any kind was the Sinclair Scientific, bought in 1974. It looked a little like this beastie on the left, though this one is a later programmable version. They were neat looking and compact, especially compared to the black CBMs that most students bought. Sir Clive is known for the ingenuity of his designs, getting the most out of limited hardware, but that usually meant not quite enough to be really useful. In the case of the first Scientific this meant Reverse Polish operation with no stack and no other memory, and trig functions that were barely accurate in 5 figures. And only in radians. And they only worked 0 to pi/2. After pi/2 they went wildly wrong with no error indication. The reliability of the keys was not good, but they could be dismantled and cleaned. I also had a black Cambridge, four-function plus constant in the same case, which was better in that it performed well within its limits. That was built from a kit. The programmable shown left was built in the same case, but, presumably because of some last-minute bodge, the battery was swapped from 4*AAA to 9V PP3, necessitating a power bulge on the battery cover - it would, just, sit on a desk, but it tipped over when you used it - it only worked hand-held (it may once have had a flimsy vacuum-formed plastic stand). It was just about programmable. It had 36 program steps and only 16 of the keys could be used, yes that's 18 bytes of program. The way the keys were encoded was very clever, so that fewer keystrokes were used than when doing the same operations directly, but using a number in a program could use half of the program space. There was a conditional branch (go if neg) but rarely coulds space be found for more than one loop. Typical Sinclair - cute but useless. It's best value is as a challenge to code something useful in 18 bytes. |
The machine below was pretty good for 1984. It wasn't too expensive, well made, and it used BASIC. In many ways it was just like other Casio type programmables with 10 programmes P0 to P9 and some similar functions, such as to swap the limited memory between program and data, but it was so much easier to use BASIC than the obscure hybrid language Casios typically used, for example INPUT A instead of ?->A or IF X=0 GOTO 10 rather than x=0 => Goto 1. There was simple string handling as well, and arrays and subroutines. It didn't take much more storage (10 IF A=2 GOTO 20 took 10 bytes on this; A=2 => Goto 1 ... Lbl 1 took 9 bytes on the Casio fx-7000G), so why did it not catch on? This one had the extra 1k RAM module installed, making 1568 bytes total. I put a program into it some time in 1988 then stopped using it; in 2006 that program was still in there, despite several battery changes.
Tandy (Radio Shack) TRS-80 Pocket Computer (1984-04-09)
(A re-badged Casio I believe)
This one's not remarkable now, but it was the first one I got my hands on that was (nearly) credit-card thickness as well as credit-card size by virtue of having membrane keys and no battery.
Credit-card sized 4-function solar-powered (1984-07-27)
This one was a classic of the late 1980s. It was the forerunner of the advanced graphicals below, but it wasn't quite there. The display was good, the size was the same, but there was not yet the memory capacity for useful programs or the PC interface for getting them in without tedious key pressing. The keyboard was also still traditional calculator, rather than menus to get all the functions on. It had by default 422 bytes total for up to ten programs plus 26 variables. It hads nine operating modes including multiple statistics modes with easy to remember names such as "SD1" and "SD2".
Casio fx-7000G (1988-06-01)
These are an odd breed. They are big and not easily pocketable, so they tend to be kept on a desk. They are fairly expensive. So why not just use a PC or even a PDA with maths software? A good question. Small, cheap calculators are better for the sort of simple things you need when you are out and about. The power that these things have requires time for thought. If you give them a hard sum, they take a long time over it. My interest is not so much in actually using them, but playing with them. Solving some problem on them is more like a puzzle, a quiet personal recreation rather than work; then the fact of it being a small, independent object with fixed and restricted abilities adds to the challenge.
All of these have a decent dot-matrix screen for multiline text or graphics. They all have: graphing; programming; linear algebra; equation solving; statistics; complex numbers; calculus; lots of non-volatile memory; PC interface for back-up and loading (except the Sharp); main and back-up batteries. The hp adds symbolic manipulation, IR interface and SD card slot. As you can see, I have bought a fair few of them.
They look quite similar, but they are not.
Texas Instruments TI-86 (2000-07-08) |
The cleanest interface. The menus are logical, and the ability to keep two levels open is really useful. All functions work on all types as far as mathematically possible, including functions operating on lists. Not the best display but useable. I also had the TI-85 (1994-02-26) which is much the same with less memory. This one has about 100 kbytes free. |
Hewlett-Packard hp 49g+ (2003-12-10 and 2006-01-18) |
The most features by a long way, and a nice display. Works in algebraic or RPN. Manual is huge and only available as a PDF; little help given on the unit itself, so it's often hard to work out how to do something. I've had to scratch some reminders on the keys for common functions that are not labelled. I've bought two of these - the first one got blown up in the Buncefield oil depot explosion on 2005-12-11. |
Sharp EL-9300 (1995-07-15) |
Nice clear display. Most functions easy to use. Programming a bit quirky, but easy to grasp. Heavily moded. Has a cute equation display mode, but key response is so slow that it's difficult not to make mistakes so most people will switch it off. |
Casio CFX-9850G (1997-06-28) |
The also-ran. It has a colour display, which sounds good but is almost useless. It commits a major sin in my view - it comes up in a menu instead of ready to calculate AND the menu is not arranged in the same pattern as the keys required to select from it - from here you have to press 1 to calculate. Terminally moded. |
Modes are when a calculator is set to perform only a specific set of tasks. For example, many Casio calculators have a statistics mode in which they can perform a number of statistical and regression functions. Often in such modes the keys are dedicated to functions relating to the mode, and many general functions are not available. Another example, also typical of Casios, is a mode for complex numbers. Typically, in complex mode the calculator will work with complex numbers but only with certain operators, perhaps + - * / and 1/x only, whereas in normal mode it will work only with real numbers but all functions are available. A better machine, such as the Texas Instruments TI-68 will add complex numbers completely orthogonally, so that all of the functions that can realistically take complex arguments do take them. It is not then necessary to change mode to work with complex numbers, and the machine will give answers to log(-1) and arccos(2). Both machine's data sheets will boast of complex number capability, but the moded version is a weak attempt.
In this set, the HP and the Texas are virtually mode-free; the Casio and the Sharp are riddled with them.
Here is another example of the difference that modes make. I have no idea why I was at one time trying to work out the convolution of a Gaussian curve with itself, I suspect it was a trial run for something more useful. Anyway, I tried it. A Gaussian curve is of the form:
y = e^{-x2}
a reversed and offset form is:
y = e^{-(X-x)2}
and the convolution required is the integral of the product of these, plotted for each value of the offset X:
+oo
C(X) = I e^{-x2} * e^{-(X-x)2} dx
-oo
[where until I get an image for these, I represents the integral operator and oo represents infinity]
The requirement is to plot C(X) against X. As infinity is a big number, I have restricted the integrations to the range -3 <= x <= +3 and also plotted for -3 <= X < 3. This should result in a plot as below, which shows the original Gaussian as the lower curve and the convolution as the upper.
Now, all of these calculators claim to be able to plot graphs, and they all claim to be able to perform definite integration by numerical methods (the hp can do symbolic integration and evaluate the result exactly but that's another story). So, all we need to do is to give the equation above to the graphing function. And on the hp, that is just what we do:
And it makes the plot shown above. After a long time. The Texas is much the same, except it doesn't have the fancy equation editor so we express the integral in function form:
y1=fnInt(e^-Y^{2}*e^-(x-Y)^{2},Y,-3,3)
y2=e^-x^{2}
Then we come to the Sharp. It has an integral evaluation operator just like the Texas, with just slightly different arguments. It has a graphing controller just like the Texas, with functions named Y1, Y2, &c. It ought to be the same, but it isn't. The graphing controller only appears in graph mode. And in graph mode the calculus function menu is there, but the integral function has gone. So you can't plot and use integration at the same time. Why? Generously, they have allowed integrals in program mode, provided you program in real mode (which excludes a number of other functions, complex numbers is one). So the plot can be made by a program:
Range -3,3,1,0,1.3,1
x=-3
Label a
If x>3 Goto z
y=Ie^-X^{2}*e^-(x-X)^{2},-3,3dx
Plot x,y
Plot x,e^-x^{2}
x=x+0.1
Goto a
Label z
Wait
This works, but the explicit looping makes it a bit slower; or you can opt as here to make the steps bigger to make a rather dotty curve.
The Casio is just the same as the Sharp, the integration operator vanishes from the CALC menu in graph mode but is there in program mode:
ViewWindow -3, 3, 1, 0, 1.3, 1
-3->Z
Lbl 0
Z>3=>Goto 1
I(e-X^{2}xe-(Z-X)^{2},-3,3)->Y
Plot X,Y
Plot Z,e-Z^{2}
Z+.1->Z
Goto 0
Lbl 1
Stop
So far as I have found, both the hp and the Texas allow all of the functions all of the time, so you don't have to run in a particular mode, and you don't have to program in a particular mode. A program can for example use matrices, calculus and complex numbers. Sharp and Casio don't; their use is much more restricted. I'd really like to know why this is. Is it lazy programming? Is it thought to be easier for the user to be led through certain preconceived problems? Is their processing or storage space more restricted? They are certainly not cheaper or smaller. And they don't admit to the restriction.
I find the Texas's system the easiest to remember and to use.
Casio and Sharp think that 9.99...E99 is big enough for anybody, though it's too small even for h^{-3}. Even back at uni I came across an atomic physics equation where I had to arrange the terms carefully to avoid overflowing the 9.9999E99 of the Sinclair. The TI-86 offers the much more useful range of 9.99...E999. The hp is odd, it will go up to 1E500 and then stops there without showing an error. However, the hp is the only one that doesn't error on tan(90) - it shows a little infinity sign.
BFI factorisation program