HP Forums

Full Version: 35S I & J registers
You're currently viewing a stripped down version of our content. View the full version with proper formatting.

Hello all.

Given that the 35S has two registers which can be used for indirect addressing, are these the registers between H and K or are these special registers independent of the A-Z registers?

They're the registers between H and K.

So, if I write a program to indirectly address registers and include DSE/ISG looping, I should create the program to indirectly address registers -11 and below (or -8 and above) to avoid overwriting my looping register in an STO+/-/* (i) or (j) command.

Edited: 3 Mar 2012, 7:47 a.m.

You better address the unnamed registers with I or J. This gives you a lot of addressable space without interfering with the indexes.

That sounds better than my idea. Thanks for the tip.

Memory management: something to remember when using indirect registers, is that memory gets assigned for all indirect registers up to the highest register used, even if the lower ones are not used. E.g. using indirect register 40 will result in memory being allocated for 0 to 39 as well. You can quickly use a lot of memory this way (write something in register 800 and do a mem check (I have ~10k free and the highest I can use is 280)). So use only the highest number really needed.

To clear indirect registers and regain memory:
1) CLVARx (BlueShift CLEAR 6): clears all indirect registers above the number entered (e.g. CLVARx 040 will clear 41 and higher).
2) Implication of (1) is that CLVARx 000 will clear registers 1 and above, but not 0 which is assigned too (and negative no.'s cannot be entered). So to get the memory back for that, you have to manually clear it by doing 0, STO I, STO (I).

Edited: 5 Mar 2012, 6:33 a.m.