> Is bank switching still occurs in "Indirect Addressing" Un-noticeably though?
Well, YES and NO.
But, if I had to choose one ...
I'd say NO.
On 18F's, the FSRx registers are 12-bits wide.
Which means it can address any location from 0 to 4095 ($000 to $FFF).
It can access memory locations in ANY BANK without having to change the current bank (BSR). It's just a single address.
The beauty of this, is that no matter what bank your program is currently using, you can read/write from any other bank without switching the banks back and forth. Which may be where your original question was aimed, because Indirect addressing can be a good tool for optimization, much like the Access RAM.
DT
Bookmarks