On 19 Oct 2019 16:40 -0400, from krewat(a)kilonet.net (Arthur Krewat):
Not to mention, if you start using log/alog tables,
and/or sin/cos/tan
tables, and interpolation, you can quickly ramp up computation speed for
simple games that have a small matrix of coordinates.
Indeed; like I said, at some point, it becomes just a matter of how
quickly you need the answer. It's not really _difficult_ to do any of
this if you're willing to wait a while to learn the value of 1/2. It's
a little more involved if you want log10(e^pi * pi^e) _fast_.
After all, Apollo navigated to, around, and back from, the Moon, using
an on-board computer that today would barely run that thermostat that
someone mentioned. 2048 15+1-bit word RAM (3840 bytes, plus parity),
36864 15+1-bit word ROM (69120 bytes, again plus parity). It could
display three general-purpose five-digit decimal numbers, each with
sign, plus three specific-purpose two-digit decimal numbers, and was
operated using a 19-key keyboard (0-9, plus, minus, and a few function
keys). In fairness, a lot of the heavier calculations were performed
by Mission Control on the ground and the results were uplinked either
digitally or via voice transmission to the spacecraft, but still...
Those programmers didn't exactly have the luxury of, when they
realized they were running out of memory, just sending along the rest
of the software on tape and telling the user to load it on an
as-needed basis.
Premature optimization is the root of all evil in 99% of the cases,
but in that last 1%, a targeted optimization effort is exactly what
you need.
--
Michael Kjörling •
https://michael.kjorling.se • michael(a)kjorling.se
“The most dangerous thought that you can have as a creative person
is to think you know what you’re doing.” (Bret Victor)