Yes, it is possible.
But very difficult. You should have a look at the C# code for the NES emulator you're referring to, and then consider that emulating Android will be more complicated than that. A good start is looking an implementation such as the NES emulator and decide which parts you need to learn first.
Wikipedia has
a great article on emulators[
^], I suggest you simply start there.
But beware, writing emulators is not for the faint of heart.
Hope this helps,
Fredrik