If your objective is to understand the architecture of a 16F84, you're on the right track to understanding an obsolete and arcane part. There's only one reason to use paged/baanked memory...Price! And that advantage has long since been nullified by technological advances.
While it's possible to understand the inner workings of a PIC16 part, the details of actaully making it work in practice will drive you nutz. All it takes is one mistake in setting the page registers and your program won't work. And when you edit it, things move around and things that used to work are now broke.
Now, any programmer who does this all day can manage it. Those of us who drag out a PIC once a year to do a quick project tend to get buried by those details. I want to hack out some code and have it work. I don't want to go searching for errors caused by my forgetting some processor quirk.
One option is to let someone else manage all those details. A compiler should be smart enough to keep you out of trouble. I use PicBasic, but there should be lots of others.
Second option is to use a processor that doesn't page memory. I think the PIC18 series fixes up most of this mess, but I haven't tried 'em yet. Think I might go with AVR if I didn't already have investment in tools for PIC.
All boils down to what you're trying to accomplish. Can't think of any reason to want to understand an obsolete part. In sample quantities, all PICs are the same price...free. mike