![]() |
EXC/ x<>Rn for stack efficiency - Printable Version +- HP Forums (https://www.hpmuseum.org/forum) +-- Forum: HP Calculators (and very old HP Computers) (/forum-3.html) +--- Forum: General Forum (/forum-4.html) +--- Thread: EXC/ x<>Rn for stack efficiency (/thread-8491.html) |
RE: EXC/ x<>Rn for stack efficiency - Matt Agajanian - 06-27-2017 09:42 PM (06-19-2017 05:44 PM)GrampaDave Wrote:Quote:Herman the moonshiner Yea, these were what added to the fun & enjoyment of learning how to use our HP calculators. On another note, as advanced and to compete with the SR-52, I wonder why HP did not include an EXC function on the 67, but waited until the HP-41. RE: EXC/ x<>Rn for stack efficiency - Thomas Okken - 06-28-2017 12:42 AM (06-27-2017 09:42 PM)Matt Agajanian Wrote:(06-19-2017 05:44 PM)GrampaDave Wrote: But HP had better names, whose sly humor made them memorable, at least to native English speakers. Because the HP-67 had "merged keystrokes," meaning every instruction was one byte. PANAMATIK posted this very enlightening link the other day: http://www.panamatik.de/ProgramCodes.pdf With the HP-41C, HP let go of the one-byte-per-instruction thing, and that enabled them to do what TI was doing, i.e. allow register numbers from 00 to 99, and add new functions like EXC a.k.a. X<>. In the HP-42S, they took this even further, adding RCL+ etc., and alphanumeric variable names. RE: EXC/ x<>Rn for stack efficiency - Matt Agajanian - 06-28-2017 01:37 AM Yes, I saw that table when it was posted. Maybe I'm missing something in your explanation. How would [f] [x<>] n (or [x<>] n) consume more than one/two bytes? HP had room for [STO] +, -, x, / n. So. wouldn't the exchange function consume one/two bytes? ADDENDUM Okay, upon inspecting the HP-67 table, I think I see what you're saying. Each instruction had to be given a one-byte hex code. After all was said and done, if I read the 67 table correctly, there are only four vacant spaces. So, there was no way to give 11 (0-9, (i) ) op codes for register exchange functionality. And, limiting exchange to four registers doesn't make sense. Right? |