Hi,
I have been working on a reverse engineering effort for a question posed by Matt Parker:
Youtube: https://www.youtube....h?v=7LKy3lrkTRA
I had a breakthrough this xmas, when I found a way to capture the CPU state of the ClassWiz Emulator for fx-83/85GT while evaluating an expression.
Although I have already solved the initial question (all results are divided by pi and multiplied by 25200 and checked for integers) there are many more interesting facts to discover.
I am particularly interested in the mathematics, strategies and algorithms that are used to calculate results.
Since I have found a lot of initial ground work on this forum, I thought it would be nice to share the knowledge back with you.
The project is long from being finished, and any comments or insights are welcome.
Please find the git repository here:
https://bitbucket.or...cpu/src/public/
In order to show what it I found, I can show you a small step, where 1771561 is divided by 13.
47253 ADD: 0130000000000000 + 0130000000000000 47272 ADD: 0260000000000000 + 0130000000000000 177156100000000 390000000000000 SUB 9787156100000000 9787156100000000 130000000000000 ADD 9917156100000000 9917156100000000 130000000000000 ADD 47156100000000 Resulting digit: 3-1-1 = 1 471561000000000 390000000000000 SUB 81561000000000 81561000000000 390000000000000 SUB 9691561000000000 9691561000000000 130000000000000 ADD 9821561000000000 9821561000000000 130000000000000 ADD 9951561000000000 9951561000000000 130000000000000 ADD 81561000000000 Resulting digit: 3+3-1-1-1 = 3 815610000000000 390000000000000 SUB 425610000000000 425610000000000 390000000000000 SUB 35610000000000 35610000000000 390000000000000 SUB 9645610000000000 9645610000000000 130000000000000 ADD 9775610000000000 9775610000000000 130000000000000 ADD 9905610000000000 9905610000000000 130000000000000 ADD 35610000000000 Resulting digit: 3+3+3-1-1-1 = 6 Etc. (total of 84 subtractions/additions) With result: 1.36273923076923 * 10^5
Edited by AlgoDump, 27 February 2021 - 11:55 PM.