Post Reply 
16C internal floating point format?
04-03-2021, 08:48 PM
Post: #1
16C internal floating point format?
Hi all,

I'm in the middle of writing a clean-room 16C simulator, as a hobby project. I don't have a real 16C (but my 15C is still working great!), and I don't want to anything like look at ROM images, or run out and buy a calculator. But I do have a question as to the behavior of a real 16C as regards the binary representation of floating point numbers. I'm guessing it's BCD mantissa and exponent, with one nybble for the mantissa's sign and one for the exponent's - that fits nicely in 56 bits - but I don't know which digit goes where, and there are a few edge cases besides.

So, if someone has access to a real calculator, could you do me a favor and let me know what you get in (56 bit) hex when you store the following numbers into registers? 0.0 42.0 -42.0 1e42 1e-42 0.0001e-99 9.999999999e99, and finally, the results of (99 <ent> 9e99 *), (-99 <ent> 9e99 *) and (0 1/x). I think that covers all the bases.


In return, I'll be happy to give you a free copy, when/if I have it working well. That's not much of a prize, though, since I plan to give it away, and put up the source on github.

BTW, I'm writing it in Flutter, which will make it easy to deploy most everywhere. For reference, I made an Android and desktop Java version of Emmet-Gray's WRPN (after asking him if he was OK with it); my version cleans up the appearance on high-res screens by using rendered fonts (see I was looking for a project to keep myself out of trouble for, oh, about another month of stay-at-home, and making a higher fidelity simulation is a good fit, so I'm writing one from scratch.


Visit this user's website Find all posts by this user
Quote this message in a reply
Post Reply 

Messages In This Thread
16C internal floating point format? - billf - 04-03-2021 08:48 PM
New 16C simulator - alpha on web - billf - 05-01-2021, 10:19 PM

User(s) browsing this thread: 1 Guest(s)