The 16F87X microcontroller
The 16F87X range includes the devices, 16F870, 16F871, 16F872, 16F873, 16F874, 16F876 and 16F877. They are basically the same device but differ in the amounts of I/O, analogue inputs, program memory, data memory (RAM) and EEPROM data memory that they have.
The 16F87X have more I/O, program memory, data memory, EEPROM data memory and analogue inputs than the 16F818.
16F87X family specification
16F87X memory map
The 16F87X devices have more functions than we have seen previously. These functions of course need registers in order to make the various selections.
The memory map of the 16F87X showing these registers ...