10.3.2.2 Program Region
program (xr) : ORIGIN = 0x200, LENGTH = 0x55EC
The program region corresponds to the Flash memory of the dsPIC33EP32MC504 device that is available for user code, library code and constants. The starting address of region program is 0x200. This is the first location in Flash that is available for general use. Addresses below 0x200 are reserved for the Reset instruction and the two vector tables.
Note: Instruction words in dsPIC33C/E/F devices are 24 bits, or 3 bytes,
wide. However, the PC increments by 2 for each instruction word for compatibility with data
memory. Address and lengths in program memory are expressed in PC units. On dsPIC33A
devices, the PC increments by 4 for each instruction word. In this architecture, a PC
address is equivalent to a byte address
Note: The linker will automatically try to allocate program text into
any region that has the (
xr
) flags; usually this region is named
program. If a custom linker script partitions memory and you wish to control the
allocation, removing the x
flag will prevent the linker from allocating
program text to that region.