© 2004 Microchip Technology Inc. DS70051C-page 4-7
Section 4. Program Memory
Program
Memory
4
4.3.4 Program Memory High Word Access
The TBLRDH and TBLWTH instructions are used to access the upper 8 bits of the program
memory data. These instructions also support Word or Byte Access modes for orthogonality, but
the high byte of the program memory data will always return ‘0’, as shown in Figure 4-6.
Figure 4-6: Program Data Table Access (MS Byte)
4.3.5 Data Storage in Program Memory
It is assumed that for most applications, the high byte (P<23:16>) will not be used for data,
making the program memory appear 16-bits wide for data storage. It is recommended that the
upper byte of program data be programmed either as a NOP, or as an illegal opcode value, to
protect the device from accidental execution of stored data. The TBLRDH and TBLWTH
instructions are primarily provided for array program/verification purposes and for those
applications that require compressed data storage.
0
8
16
PC Address
0x000100
0x000102
0x000104
0x000106
23
00000000
00000000
00000000
00000000
Program Memory
‘Phantom’ Byte
(Read as ‘0’)
TBLRDH.W
TBLRDH.B (Wn<0> = 1)
TBLRDH.B (Wn<0> = 0)