Arrays don't use program memory. They are created in RAM (shown as SRAM in your datasheet).
PBP system variables can require up to 24 bytes for the 16F family & 26 bytes for the 18F family. How many are actually used depends on the PBP command used in your program, the target device, and library routines included at compile time, etc...
Your array of 34 bytes + PBP max system vars is only 58 bytes. For the 16F88 you have 368 bytes - so you still have 310 bytes RAM left to play with.
You can store information in data EEPROM, or flash program memory, but you can't work with EEPROM like you can with "variables" in a RAM data array.
I.E. you can read data into your RAM array, then stash it in EEPROM, but you can't read your data directly into a string "STR foo.array\34" into EEPROM.
Bookmarks