[HN Gopher] Soviet scientific calculator gives up its Cold War-e...
___________________________________________________________________
Soviet scientific calculator gives up its Cold War-era secrets
Author : thunderbong
Score : 61 points
Date : 2021-07-18 12:16 UTC (10 hours ago)
(HTM) web link (hackaday.com)
(TXT) w3m dump (hackaday.com)
| multiply wrote:
| There are a lot of good HP RPN calculator emulators on phones.
| Try Droid48 for instance and give RPN a try.
| d_silin wrote:
| I had MK-61 one (like MK52, but without the ROM bank) as a kid
| and used it to learn programming.
|
| You can do amazing things with just 105 bytes of RAM, like
| playing real-time games using DEG-GRAD-RAD switch as a joystick,
| for example.
| jeffrapp wrote:
| Yeah m
| disabled wrote:
| RPN is still being used, and it really should be taught in
| schools, including at the elementary levels. It makes more sense
| than traditional calculator entry. Once you learn it, you never
| go back.
|
| The reason that RPN is used is because it reduces errors with
| calculation, although it can be fewer keystrokes. It certainly is
| more concise. It also makes more sense (logically) when entering
| numerical data. It is just like how you would write 128 + 256 on
| the whiteboard. On a whiteboard you would write a 128 and then a
| 256 on the row below it then a + (on the left hand side). In RPN
| it would be 128 ENTER 256 +.
|
| Just FYI: RPN operates using stacks. Because of the way things
| are displayed on stacks, it helps prevent entry errors, as it is
| easier to decode and review.
|
| On an RPN calcultor: if you put in 128 and press ENTER, it goes
| to the highest empty stack. The ENTER means that nothing else can
| be entered into the stack unless an operand meant for 2 stacks is
| used (+, -, *, /, etc.).
|
| (Stack) 1: 128
|
| (Stack) 2: (null--nothing here)
|
| (Stack) 3: (null--nothing here)
|
| When you press 256 the result looks like this in an RPN
| calculator.
|
| (Stack) 1: 128
|
| (Stack) 2: 256
|
| (Stack) 3: (null--nothing here)
|
| When you press + in the above state, Stack 1 is added to Stack 2,
| and Stack 2 becomes null (empty)
|
| (Stack) 1: 384
|
| (Stack) 2: (null--nothing here)
|
| (Stack) 3: (null--nothing here)
| crispyambulance wrote:
| I used an RPN calculator (15C) upon entering college. Getting
| used to it didn't take too much effort, and it was easy to see
| the advantage.
|
| But do students still use calculators, at all? What do they use
| now? I honestly have no idea.
| dboreham wrote:
| Calculator apps on smartphone, unless the jurisdiction
| prohibits their use in which case one of a list of TI
| calculators that cost $100+
| ajnin wrote:
| I don't know where the notion that RPN is more intuitive comes
| from. My dad had an HP-45 when I was a kid and I didn't quite
| grasp the concept of a stack. You've also got it wrong in your
| example (you've got stack 1 and 2 reversed in step 2), so I
| guess it's not that obvious for grown ups either! When you
| write a formula on the blackboard it is something like (5+6)*3,
| not 3[?]5[?]6[?]+* or whatever. Takes a bit of mental
| gymnastics to convert between the two, and you need to keep the
| state of the stack in your head as you go. Not really viable
| for anything too complicated. I guess that regular calculators
| suck for that too, in my opinion the best are symbolic calcs
| where you enter the formula as you would write it, parenthesis
| and all, which as a bonus allows you to go back and fix
| mistakes and reuse formulas easily.
| jonsen wrote:
| Of course for formula evaluation the ability to enter a
| formula directly and pressing EVAL is optimal. But for ad hoc
| calculation nothing beats RPN in my opinion. The HP 48 series
| calculators can do both.
| disabled wrote:
| It's tricky to learn that in RPN. It's nice to be able to
| go back to algebraic mode on the HP calculators in rare
| situations where you do not know the right syntax (which
| can be arbitrary by calculator) for entry of equations.
|
| It took me about a month to learn RPN along with equation
| entry, and I did that while in my weed-out courses in
| engineering school. Everyone was using a different
| calculator than me, and while they could directly learn
| from each other, I had to figure out how to enter stuff on
| my own. But, it paid off on exams, as people who made
| parenthesis or entry errors got major points off. It also
| saved time on exams and I really did not have to double
| check for entry errors, which can be quite tedious on
| electrical engineering exams.
| [deleted]
| etaioinshrdlu wrote:
| I learned RPN years ago and I went back to regular calculators.
| Although I also am unable to learn editors like Vim / emacs.
|
| These things seem to not be for me.
| CodeGlitch wrote:
| Reverse polish notation? I was taught this for UK A-level
| computer science (age 16).
| disabled wrote:
| I am an American (culturally) who lives in Croatia, so I am
| aware of the educational system in mainland Europe and also
| the UK.
|
| In the US, we only learn "traditional" (non-RPN), calculator
| entry, and this is even at university level! But, calculators
| are only allowed for checking our work in mathematics
| courses, at both secondary and university levels, and never
| for quizzes/exams/proctored material. But, computer science
| in secondary school (high school) may be an exception as RPN
| is a classic example of the usage of stacks.
|
| I think a lot of this has to do with contracts that school
| districts in the United States have with the calculator
| ("educational") companies, which have educational material
| (which is integrated into standard textbooks that you use for
| the school year) to assist in teaching calculator entry
| techniques and usage. They also get quite good deals on Texas
| Instruments calculators, which have no RPN features
| whatsoever. I really do think that kids (and their educators)
| not knowing RPN is a huge disservice.
|
| I personally taught myself RPN on an HP 50g while doing my
| undergraduate electrical engineering coursework, specifically
| during circuit analysis 1 and electromagnetics 1. Everyone
| else was using a TI-89 (Texas Instruments 89) and they were
| learning off of each other how to use various techniques to
| solve problems, while I was alone with learning stuff on the
| calculator. Because of the complex entry of various different
| unit types and integrals, it was a pretty steep learning
| curve, on the HP 50g, and it took me about a month to get
| proficient at it.(This is difficult to do on top of the
| coursework because you are going through your weed-out
| courses at a "traditional" engineering program where over
| half the class will not pass these courses! As in, they will
| either get a D+ or lower, or get a W--a withdrawal grade).
|
| But, it saved me and paid off on exams, while I was using the
| HP 50t, as people made all sorts of errors on their TI-89s
| with these really difficult equations, and got major points
| off. Although many different types of errors are made, a
| critical one is a missing parenthesis, which causes a ton of
| points to be taken off on an exam. Also, people with TI-89s
| ran out of time "double checking for errors" (such as for a
| missing parenthesis) on exams, and this alone can be the
| difference between passing and failing a course. The way the
| stack works on a HP 50g seriously reduces errors.
|
| My (American) father also taught himself RPN at university
| when he was studying to become an accountant. But, in his
| case, it was easier to learn, although still not necessarily
| easy.
| wtallis wrote:
| The benefits of the units system in the HP 48/49/50 series
| really cannot be overstated. You don't just get free
| conversions between compatible unit types, you also get
| realtime type checking to prevent invalid operations on
| quantities with incompatible units. This eliminates a very
| common source of errors, and also encourages more rigorous
| labeling of quantities with units when you're working on
| paper.
|
| The TI-89 technically can also compute using quantities
| tagged with unit information, but the UI for it is too
| convoluted to be useful.
| kwhitefoot wrote:
| Me too. And this was in 1972.
| NotSwift wrote:
| I really like articles about obsolete technology.
|
| But author of the video was surprised that the calculator was
| using Reversed Polish Notation(RPN). Hewlett-Packard (HP)
| produced a whole line of calculators that also used RPN. It is a
| pretty smart idea to use on calculators where there is not a lot
| of memory available.
| TooSmugToFail wrote:
| Yeah, I had a HP-48 during my uni years. An awesome machine.
| disabled wrote:
| RPN calculators are still being sold by HP. This includes
| financial, scientific, and graphing calculators.
|
| The current RPN HP graphing calculators leave a lot left to be
| desired, and aren't as good as the old ones. I have an HP 50g
| RPN graphing calculator which is amazing. But, there are even
| better ones that are no longer in production.
|
| Swiss Micros makes remakes of such amazing HP calculators:
| https://www.swissmicros.com/products
|
| At some point I will purchase the DM41X from there.
| leephillips wrote:
| Also, fewer keystrokes, no?
| jsjohnst wrote:
| Depends on what you are doing, but it can be fewer keystrokes
| for more complicated calculations, aka not basic arithmetic
| like 33 x 42, which is six keystrokes either way (3,3,x,4,2,=
| or 3,3,Enter,4,2,x).
|
| Edit: replaced asterisks as multiplication symbol for x's to
| avoid markup processing.
| jonsen wrote:
| A space after * ( 3 3 * 4 2 = vs. 3 3 ^ 4 2 * ) or make it
| code 3 3 * 4 2 = 3 3 ^ 4 2 *
| [deleted]
| avmich wrote:
| Descriptions of stack in B3-34 family - MK-54, MK-56, MK-61
| included - went like this:
|
| Imagine a stack with the following registers:
|
| T: 0
|
| Z: 0
|
| Y: 0
|
| X: 0
|
| X1: 0
|
| The X register is the same as what you see on the indicator.
| There are 3 registers above X and one special register ("previous
| result") which is X1. When you enter digits, they go into X
| register, so pressing "1" "2" "3" leads to changes in X:
|
| X: 1
|
| X: 12
|
| X: 123
|
| Now if you want to add another number to what you have in X, you
| have to somehow tell the calculator that you're done entering the
| number in X. The button for that was originally just "arrow up"
| (^) , later it became "B arrow up" (B^), when you press it, X
| gets copied to Y, previous Y content gets moved to Z, previous Z
| content - to T, previous T content is lost. So after "123" "B^"
| you have
|
| T: 0
|
| Z: 0
|
| Y: 123
|
| X: 123
|
| X1: 0
|
| Now you may enter a new number in X; right after B^ newly entered
| digit will replace the content in X, and after that each
| additional digit will be considered a part of the number being
| entered. So, after "123" "B^" "56" you have:
|
| T: 0
|
| Z: 0
|
| Y: 123
|
| X: 56
|
| X1: 0
|
| Now you can enter the operator - after you've already entered
| both operands, that's why it's "Reverse" Polish Notation (forward
| one is in e.g. Lisp lists). If you enter "+", you'll get:
|
| T: 0
|
| Z: 0
|
| Y: 0
|
| X: 179
|
| X: 56
|
| So the "+" operator works on content of Y and X, Z gets copied to
| Y, T gets copied to Z and previous T content remains in T. X1 now
| has previous value - what was in X before operator, that is, 56.
|
| If you want to calculate 1 + 2 x 3, you enter 1 B^ 2 B^ 3 x + ,
| and if you want to calculate (1 + 2) x 3, you enter 1 B^ 2 + 3 x
| . "x" here is "multiply". Notice you don't need to enter B^ again
| if what you have in X is the result of operator application, not
| just entered from the keyboard.
|
| There are commands X <-> Y, which swaps X and Y (and X also gets
| copied to X1), and "circular" (looks like "recycle" icon, which
| is triangular with 3 arrows, only this icon is round), which
| sends X to T (and X1), T to Z, Z to Y and Y to X. Four level deep
| stack is usually enough for many manual problems.
___________________________________________________________________
(page generated 2021-07-18 23:01 UTC)