The Computer Timeline: Calculators, Maths and Reverse Polish Notation

preview_player
Показать описание
What happens when you set out to build a pocket calculator? Well in this case it turns out you also accidentally invent desktop computers, and spawn a bunch of CPUs that are still being used today.

Follow along as we go through the thoroughly bizarre story of how trying to do complex maths and fit it in our pockets lead directly to the machine you're using right now to watch this video.

Calculators were originally like computers - huge boxes that required care and maintenance and sat firmly on a desk plugged into the wall. Today everyone wants to own a smartphone, back then everyone wanted a pocket calculator.

The story of trying to cram a whole shoebox of electronics into a pocket involves dodgy corporate dealings, people starting their own companies and deciding that while calculators were nice, being able to program them would be even better.

Part of the difficulty of building a calculator is working out how to understand the maths the operators were entering. A basic four function calculator can be thought of as a simple state machine, but once we get to doing scientific functions or longer multi stage formulae. And this is where a technique known as Reverse Polish Notation comes in.

Credits / Attributions
=================

Wilhelm Schickard 1592–1635. Astronom, Geograph, Orientalist, Erfinder der Rechenmaschine, Tübingen 1978

Replica of Schickards calculating machine
Herbert Klaeren

A Pascaline signed by Pascal in 1652

Anita MK8 calculator

Bundesarchiv, B 145 Bild-F038812-0014 / Schaack, Lothar / CC-BY-SA 3.0

Рекомендации по теме
Комментарии
Автор

Impressed by the depth and effort in this video. Your hard work adds value, even if the audience is niche. Looking forward to more.

drcherepanov
Автор

I really like RPN and use it on my phone. It's actually really good when shopping. Enter how much you have, then subtract the cost of each item. You've always got how much is left shown.

wisteela
Автор

Modern stack frames don’t limit you to the top item only. Instead they are a pointer to the current top item, but can be indexed to give access to all items below (or even above - in other words items that have been popped already) it. When you call a subroutine then parameters are pushed, then the call instruction pushes the return address. The subroutine can access all of the parameters without popping them, and the caller need only add the size of the parameters to the stack pointer on returning to discard them.

stevetodd
Автор

You pressed a lot of buttons for a 73 old subscriber. From that tiny Sinclair calculator kit, one had to construct ones self (prompting another memory of the Sinclair audio amplifiers [not much much bigger than a box of Swan Vester matches] beautifully designed cases with sexy heat sinks but containing just three transistors); then the 4004 development board with a hexadecimal keyboard and 8 digit display, 4 bits rule!; onto forth, the first compiled language for 8 bit computers. Not to mention reverse engineering the input parsing code for the Microsoft Basic on a TRS-80. I told you not to mention that! Limited resources were so much more fun than the 2GHz, 16GBytes, i7, ThinkPad I have now.

willofirony
Автор

Well put together. Thank you. It's one of those memes you see on your timelines.

jonwest