News for hackers. Stuff that matters.
Re:1/9998 = 0.0001 0002 0004 0008 0016 0032 0064 0128 0256.. by amagumori on Thursday January 30, 2014 @02:10AM (#7149426)
i'm interested now - what does that expose about the internal architecture for you?
Re:1/9998 = 0.0001 0002 0004 0008 0016 0032 0064 0128 0256.. by jloughry on Thursday January 30, 2014 @02:41PM (#7152870)
Well, clearly the display is an addressable register, not merely an output through a latch.(I say that because I assume the design goals of an inexpensive calculator include kaizen-ing the bill of materials down to the absolute minimum. So it's probably a visible register. Similarly, it's probably a digit-serial architecture (maybe BCD), also for parts count reasons, but yielding supplemental advantages when it comes to verification.

Different operations take noticeably different amounts of time; a "timing attack" like those used for cryptanalysis might yield clues to what's in the black box.

The way new digits appear on the display when typed in suggests it might be implemented as a shift register. It would be interesting to look at high speed video of the display when the answer to a long computation appears; do the answer digits appear (rapidly) one at a time? Do they shift in from the left? Three caveats: (1) I've never noticed it happening; (2) LED displays are almost always multiplexed, but you could probably see through that; and (3) probably wouldn't work on an LCD because too slow. I used to have a vacuum fluorescent display calculator, though; IIRC it was not multiplexed.

There are a few articles on the web about the architecture of calculators, including the Busicom [1] and Sinclair [2]. Personally, I want to hear more about zoul's research---how did you do it?

[1] http://www.4004.com/

[2] http://files.righto.com/calculator/sinclair_scientific_simul...