The following warnings occurred:
Warning [2] Undefined array key 38678 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 38682 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 38686 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 38689 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 38693 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $thread - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $fid - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 38682 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 38686 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 38689 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 38693 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $theme - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $theme - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $lang - Line: 5 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 5 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Attempt to read property "messages_in_thread" on null - Line: 5 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 5 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks





Calculator Logic Systems (long)



#6

Until I discovered this forum, I really was not a calculator Geek. Sure, I used one frequently, but I did not think about them constantly.

Now however, I am a total calculator Geek. I think about them all the time. When asked when this will all blow over, I usually say, "we'll see"!

The point of all this prelude: In my previous life, I was only proficient in RPN--meaning that I have always had an intuitive feel for its use (from frequent use) and when tackling complex manual calcs, I have always been able to use all of the stack, and avoid losing data off the back of the t register etc.

For any non RPN machine, I would work with it in a "crippled" mode--using pencil and paper, or the (usualy solitary) memory register even when not needed--always careful.

But now, whenever I see a machine, I have to see how it works--so I have made some interesting discoveries! I am sure many or most of the present audience has already made them, so please forgive my recent enthusiasm.

So far, I have found at least 5 major different logic systems: (and many sub-sets!)

RPN/RPL

Adding Machine Logic

"Regular Calculator" Logic

"Algebraic" Logic

"Formula entry"

So, for instance, most of the cheap regular 4 or 6 function machines have a curious stack system: Note that I am indicating chain calculations following on from the original:

1+2=3 4=5 6=7; or also 5/2=2.5 5=1 10=0.5


PLEASE SEE THE FOLLOW ON POST WHICH CORRECTS AND AMENDS THIS PART.


In other words, it is sort of a perfect infix: it remembers the first number and the operator, and if you type anoither number right after, followed by equals, you will get an answer. And therefore if you type equals twice, you will carry on with the answer and the first number. This is actually as good or better than RPN for doing certain chain sums. Of course there is also no precedence--but with a memory register, you can get around this, and in fact I did some big computations and compared them to an HP 20s and they had the same number of keystrokes.

The more curious part is this:

8/=0.125 =0.015625 etc for each equals. In other words, there is an implied leading "1" for some reason. This is sort of a mirror of the other fact: 8x=64 =512 etc.

Interstingly, the built-in Windows calculator does the same thing except that you get the more expected series of:

8/=1 =0.125 =0.015625 etc.

Now, the "algebraics" generally do not seem to have this handy chain behavior, but I am sure some of them do (for instance, the Windows built-in one does). The 20s has no good chain system, other than writing a progam to add or mult a constant, so two keystrokes is still possible.

An interesting thing about the algebraics with precedence, like the 20s, is that you actually do not need to use all the parentheses--and in fact if you use one in every place you see on paper, you will use way more keystrokes. For an RPN guy, this business of whether and when to hit close parentheses, versus =, is quite confusing and a source of error.

Then of course there are the 27s with the stack, and most HP pioneers, with the "input" swap and also last x.......

Finally, a co-worker has a casio with "true" algebraic--so even sqrt, cos, sin etc are infix rather than postfix. I have not explored it in depth yet, but I am sure there are some interesting nuances.

I must say, I was surprised at the utility of the cheapo regular calculator logic, once I got to trying it out!

Regards to all.

Bill

Edited: 15 July 2003, 11:15 p.m. after one or more responses were posted


#7

Theres just one problem:
Nothing of this is documented. So you have to do a lot of try and error testing before you know whats going on.
And then when you use another of those casio or texas calculators that seams to be exactly the same, you find out it behaves diffrent.

Maybe I am just lazy, but when I calculate something I wanna think about the problem I am solving, not about what the right keystrokes are to avoid loosing data.

Regards, the RPN guy Harry

#8

none of mine i can find do the first logic example. what makers work with a prefix constant like that, eg 1+2=3, 4=5? i have found that different manufactures always did have slight differences in operation. today a lot has been standardised.

all the casio i can find, for example, will either auto constant on the second term (eg 1+2=3,3=5) or require you press the operator twice (eg 1++2=3, 3=5). canon, models tend to auto constant this way too.

there is also desk calculator logic. 1+2=[2] (im using [] to indicate the display). this is not right, instead you do; 1+2+[3] or 2*3=[6], but 1+2+[3]2*3=[6]+[6] or on some models, more usefully, 1+2+[3]2*3=[6]+[9]. you also always get an auto accumulator (that works differently) and a memory that works as normal (or two memories).

#9

Bill,


A very interesting report. The only non HP calc that I have to ckeck all this out is my teeny weeny Sharp ELSI MATE. And I can't find a battery for it. I will get one and report back.

tm

#10

Hugh's observation regarding infix type loading of a constant is correct: I goofed in writing the logic system of "regular" calculators, and Hugh's post is correct, viz:


1+2=3; 2=4; 3=5. However, on my 6yr old's $1 "LeWorld" and on my wife's trusty Sharp ElsiMate EL 230, the multiplication seems to be as my original post, viz:


1x2=2; 3=3; 5=5, and 2x3=6; 5=10 etc. And the Division is different yet again:


20/4=5; 5=1.25; 4=1; 4=1; 4=1 etc! And for Subtraction:


50-5=45; 3=-2; 2=-3; 5=0! Don't ask me to explain this--I have no Idea!

So maybe I should go back to being conservative when using non RPN. Harry s right--the calculations should be reliable!

But I think this behavior of these calculators probably points to the underlying architecture---so I am going to pretend to be an archeologist, and work backwards to deduce the system.....


Regards,

Bill Platt


Possibly Related Threads…
Thread Author Replies Views Last Post
  Hook-µP software by Rush Systems Lute Kamstra 5 2,220 11-29-2013, 01:30 AM
Last Post: Lute Kamstra
  HP Prime: Long integers (continued) Helge Gabert 2 1,474 11-07-2013, 11:24 AM
Last Post: Helge Gabert
  HP Prime: Pass "Long" Integers to a Program Helge Gabert 6 2,378 11-03-2013, 01:12 PM
Last Post: Helge Gabert
  HP Prime polynomial long division bluesun08 13 3,550 10-30-2013, 03:29 AM
Last Post: parisse
  A very long HP-17BII equation Gerson W. Barbosa 22 5,192 04-19-2013, 12:37 AM
Last Post: Gerson W. Barbosa
  A long WP-34S night Siegfried (Austria) 10 3,011 04-16-2013, 02:11 AM
Last Post: Siegfried (Austria)
  HP-25 left on for a long, long, while Matt Agajanian 12 3,520 04-10-2013, 11:33 PM
Last Post: Steve Leibson
  RPN logic question Victor Quiros 52 10,982 03-12-2013, 02:59 PM
Last Post: Victor Quiros
  HP-65 logic board repair - help required Alberto Fenini 1 1,183 02-17-2013, 06:39 PM
Last Post: John Robinson
  RPL long vs. short names peacecalc 5 1,983 10-30-2012, 01:25 PM
Last Post: peacecalc

Forum Jump: