On this page you will find ideas for further developments to the DIY Calculator concept, and also information on a variety of mega-interesting computer and calculator-related “stuff”.
The History of Calculators and Computers
The story as to how people developed different number systems and aids to calculation – cumulating in today’s calculators and computers – is a fascinating tale. The following topics are abstracted from a bonus chapter entitled The History of Calculators, Computers, and Other Stuff” provided on the CD-ROM accompanying How Computers Do Math
The Origin and Evolution of Keyboards, Displays, etc.
These days, we tend to take things like computer keyboards and high-resolution graphics displays that provide bright, vibrant images for granted.
But where did these devices originate and how did they evolve into their present forms? These questions and more are answered in the following
Color Vision: One of Nature's Wonders
The human brain and visual cortex are capable of processing
huge amounts of visual data. In fact, studies have shown that we receive approximately 80% of our external information in visual form. Generally
speaking, however, most of us tend to take our visual capabilities for granted, especially when it comes to color vision.
A Timeline of Calculators, Computers, and "Other Stuff"
One thing about history is that there's an awful lot of it about. The history pages featured in the previous topic cover a lot of ground, but there's always so much more to discover. Thus, as we've run across interesting nuggets of trivia over the last few years, we've squirrled them away, and we now present them to you as a suite of timeline tables. More...
The Heath Robinson Rube Goldberg DIY Computer Project
This paper describes the concept of a mixed-technology computer that we are proposing to build out of relays, vacuum tubes, transistors, and
simple integrated circuits (silicon chips), along with more esoteric technologies such as pneumatics and hydraulics (and don't ask us about the hamsters).
The "Computing Universe" from Single Processors to Arrays of "Things"
Traditional techniques for increasing computational performance and throughput
are starting to run out of steam. When a conventional processor cannot meet the needs of a target application, it becomes necessary to evaluate alternative
solutions, such as multiple processors, arrays of processing elements, and "great big piles of gates."
Alternative Computer Architectures (General)
The virtual microprocessor featured in the DIY Calculator contains a single accumulator, an index register, and a stack pointer. Over the years, computer architects and design engineers have experimented with a variety of different architectures, such as multiple accumulators, additional general-purpose registers, and so forth.
The discussions in this topic introduce some interesting developments and considerations, such as von Neumann
versus Harvard architectures, RISC versus CISC, multiplexed data and address busses, multiple accumulators versus general-purpose
registers, and ... the list goes on.
Alternative Computer Architectures (Early Microprocessors)
As was noted in the previous topic, the virtual microprocessor featured in the DIY Calculator contains a single
accumulator, an index register, and a stack pointer. In this topic we introduce the architectures associated with some of the early
microprocessors, such as the Intel 4004, 4040, 8008, and 8080; the Zilog Z80; the Motorola 6800 and 6809; and the MOS Technologies 6502.
Rounding Algorithms 101
We all remember being taught the concept of rounding in our younger years at school. Common problems involved monetary values, such as rounding
some amount like $5.19 to the nearest dollar (which would be $5 in the case of this example). However, although this may seem simple at a
first glance, there's a lot more to rounding than might at first meet the eye.
Introducing Fixed-Point and Floating-Point Representations
The calculator program we develop in our book, How Computers Do Math, is a simple four-function (add, subtract,
multiply and divide) tool that works only with 16-bit integers. In reality, of course, this is very limiting, because it
means that we can’t represent real numbers like 3.142. Thus, in this topic we introduce the concepts of fixed-point and floating-point
representations and calculations.
Introducing Binary Floating Point
The previous topic introduced the concepts of fixed-point and floating-point representations in general terms. In this
topic we consider the special considerations associated with binary floating-point representations and define our own 1-7-16 format
(1-bit sign, 7-bit exponent, and 16-bit mantissa). These discussions will form the basis for some binary floating-point subroutines
that we will develop in the not-so-distant future (see also the Subroutines page on this website).
Introducing Binary Coded Decimal (BCD)
Many folks belittle the binary coded decimal (BCD) format, in which each digit in a decimal number is represented by
four binary bits. However, there are a lot of interesting aspects to this format of which one should at least be aware (not least
the trials and tribulations associated with wrapping one's brain around the concept of tens complement arithmetic).
Introducing BCD Floating Point
The previous topic introduced the core concepts of Binary Coded Decimal (BCD). Now we are in a position to combine our
knowledge of BDC and floating-point arithmetic (as discussed in an earlier topic) so as to consider a BCD floating-point implementation.
These discussions will form the basis for some binary floating-point subroutines that we will develop in the not-so-distant future
(see also the Subroutines page on this website).
Creating A Physical Version of the DIY Calculator
The virtual version of the DIY Calculator used in How Computers Do Math
provides a fantastic tool for learning about computers
and calculators. However, there is something satisfying about having a real machine to play with, so we’ve been pondering the idea of creating a
physical version of the DIY Calculator. In fact, some students at Newcastle University in the UK have already created VHDL models for the DIY
Calculator and created an FPGA-based implementation.
Hot News! Two electronic engineers in Austria (Johannes Hausensteiner and Helmut Zulus) have started a project to implement a physical
version of the DIY Calculator using a Field-Programmable Gate Array (FPGA). We can't wait! In the meantime, they've started
a Wiki documenting the project.
Links to Other Cool Calculator, Computer, and Related Websites
In addition to all of the cool material you'll discover as you meander your way around our website, there are a lot of other really cool sites to visit, peruse, and ponder. A few of these sites are as follows (we'll be adding more as time goes by):
Are you interested in old transistors? Well, Jack Ward has created an amazing Transistor Museum website with great articles, a must-see photo gallery, oral histories, and much, much more!
Harry Porter, a lecturer at Portland State University, has created an incredibly cool Relay Computer. His website includes photos and videos of this little scamp (it's great to hear the relays clattering away). We want one!
John Wolff is an Australian engineer with a deep interest in mechanical and electronic calculators. If you
visit John's Website, you'll see that he has
torn down, cleaned, and rebuilt a number of machines, taking lots of superb photos of their innards, which he describes in
Claiming to have been "Wasting time online since 1993," Josh Madison has created an incrediby useful program called Convert that you can use to convert the most popular units of distance, temperature, volume, time, speed, mass, power, and so on. You can download a free copy from the Convert page on Josh's website.
Proponent of structured (verbal) numbers, calculator enthusiast James Redin has some cool virtual calculators and a wealth of historical information at his Xnumber website.
Calculator collector Nigel Tout has an amazing collection of calculators through the ages. You can find details and see photos at his Vintage Calculators website.