The Museum of HP Calculators

HP Forum Archive 14

[ Return to Index | Top of Index ]

HP33s 255 byte equation limit?
Message #1 Posted by bill platt on 4 Mar 2004, 11:16 a.m.

In a different thread, Paul Brogger mensioned the folowing:

Quote:
I just entered the first 254 bytes of what I remember of the Gettysburg Address into an "equation" in my 33s. (At 255 bytes, EQN mode stops taking input and objects.) I suppose I could enter many such equations into a program, with one byte consumed for each letter (upper case alphanumerics and function codes only, with no punctuation to speak of) and three bytes of overhead for each separate equation entered.


So the question is, what does this mean? Are we going to be forced into having relatively short equations? (Not that I would really want long ones, with the dreadful inability to edit the equation!) Or, transforming really big equations into RPN expressions (Horner's method where applicable)?

In my 32sii, I have no problem entering an expression with, say, 269 bytes into the equation list---of course I don't have enough room to solve it---but it will take the equation.

How many characters does 254 bytes work out to be in the 33s?

regards,

Bill

bill at plattdesign stop net

      
Re: HP33s 255 byte equation limit?
Message #2 Posted by PauL Brogger on 4 Mar 2004, 11:30 a.m.,
in response to message #1 by bill platt

The limit is indeed ~255 bytes per equation, whether as a program line or in the equation list. (The functional limit actually seems to be 254 bytes on a program line.)

The equation list seems to be limited to 30 entries. I haven't tried to see whether more than 30 equations may be entered as program lines, but I suspect that to be so.

(This may all be spelled out explicitly in the manual, so RTFM may apply. I've glanced about, and it hasn't jumped out at me, so I've been pushing the limits by pushing the buttons.)

The memory cost of entries in equations appears to be exactly the number of characters displayed. The square root function, for example, is entered as SQRT( and consumes five bytes.

The checksums of equations appear to be identical whether entered in the equation list or as program lines.

One only-semi-relevant tidbit I found last night: it does appear that one cannot obtain a length or checksum for a program without a label. One may enter program lines starting at PRGM TOP without entering a label. (The line numbers all begin with a zero rather than with a letter.) But the MEM command's PGM list doesn't display an entry for the unlabeled program, and hence no LN= or CK= is available. (Of course, the length may be calculated in a couple of ways.)

BTW, does anyone have any information on the internal encoding of the 32s/sII/33s character/command set, and what checksum algorithm is used?

Edited: 4 Mar 2004, 1:54 p.m.

            
Re: HP33s 255 byte equation limit?
Message #3 Posted by bill platt on 4 Mar 2004, 4:20 p.m.,
in response to message #2 by PauL Brogger

This 254 byte problem seems suspiciously similar to the ~254 lines of programming limit on GTO in the "12C Platinum". I looked over the 33s Manual (downloaded it some months ago) and I find no indication there that there is a limit to equation length, nor number of equations. Indeed, it says what the 32sii manual says--that only the available memory limits the size.

Another issue I noticed just from reading the manual: apparently it is possible to program in either ALG or RPN mode. But more importantly, it says that:

a. RPN mode programs will only run in RPN and vice versa for ALG;

b. You can code a program to switch the mode during running.

So, have you tried this out? What happens if you write an RPN program while in ALG mode? What if you write it in RPN mode, but then switch to ALG before <XEQ>? And vice versa for ALG? Can you really put a mode instruction in the program--does it work?

Also, we should test the looping against program size---making sure GTO and GSB ("XEQ" -- I like GSB better, don't you?) will work correctly with long (>254 lines and or 254 bytes) programs.

Best regards,

Bill

                  
Re: HP33s 255 byte equation limit?
Message #4 Posted by Norris on 4 Mar 2004, 4:44 p.m.,
in response to message #3 by bill platt

The 32SII and 33S manuals contain almost identical sections on entering equations (on pages 6-5 and 6-4 respectively). The only difference is that the 33S manual contains an extra sentence in Paragraph 3 about the 255-character limit:

"You can enter up to 255 characters per equation."

Oddly enough, Paragraph 5 in both manuals states:

"You can make an equation as long as you want — you're limited only by the amount of memory available."

It appears that Paragraph 3 was edited for the 33S manual, but that the editors neglected to remove Paragraph 5. So Paragraphs 3 and 5 of the 33S manual contradict each other.

Don't see anything in the 33S manual about a 30-equation limit. This may come as an unwelcome surprise to NCEES exam candidates who were planning to stuff the 33S full of equations

                  
Re: HP33s 255 byte equation limit?
Message #5 Posted by Paul Brogger on 4 Mar 2004, 5:46 p.m.,
in response to message #3 by bill platt

I entered a program with 200+ executions of another program. (On the 32s/sII/33s, "XEQ" is used rather than "GSB", but they mean the same thing.)

The length of the first program is 624 bytes. The second routine simply adds one to a counter and returns. All of the XEQ's work fine. From this I take it that there is neither a 256- nor a 512-byte "boundary" to subroutine execution.

With regard to ALG mode: I know that it would be big of me to investigate that behavior, and contribute to the general knowlege pool by sharing my results. But I just can't muster the interest. I don't think I'll ever utilize ALG mode -- certainly not in a program. So I'll leave that area of investigation to my worthy peers.

Sorry!

Edited: 4 Mar 2004, 5:49 p.m.


[ Return to Index | Top of Index ]

Go back to the main exhibit hall