So you're looking to write your own NES emulator and have stumbled upon this forum for technical assistance. Great!
But before taking any further steps, please be aware there is already a mind-bogglingly excessive number of NES emulators in development:http://wiki.nesdev.com/w/index.php/Emul ... evelopment
So before opting to create a new one -- quite possibly another project which will go no where given lack of time or interest down the road (be realistic!) -- please take some time out of your day to research one (or all) of the many existing in-development emulators instead. Your efforts might be better spent improving one that's already started, or by teaming up with an existing developer.
Regardless of what you choose, happy coding!