Breaking x86 up into smaller portions is smart, I'd start by focusing on the integer instructions, then work up to floating-point instructions as needed. Later, you could pick up more advanced extensions of the x86.
The general purpose registers on the 32-bit x86 are EAX, EBX, ECX, EDX, ESI, and EDI. These can be used for pretty much anything, but several are treated specially by certain instructions. For example; ECX, ESI, and EDI are used by the REP MOVSB instruction to move the number of bytes specified in ECX from the memory location referenced by ESI to the memory location referenced by EDI. However, in most cases you can use these registers for anything you want, which is why they are called "general purpose". ESP and EBP are used to manage the stack frame so it's not recommended that you use them for anything else.
EAX | : | Accumulator Register |
EBX | : | Base Register |
ECX | : | Counter Register |
EDX | : | Data Register |
ESI | : | Source Index Register |
EDI | : | Destination Index Register |
ESP | : | Stack Pointer Register |
EBP | : | Stack Base Pointer Register |
If you're planning on doing some old-school stuff, I suggest you look to some
old school documents. Bad joke aside, that college archive has a lot of really nice documentation, lectures and examples. If you look at
some of the archives you'll find a huge list of examples from first steps to a Wolfenstein-3D clone called Everitt-3D. There is a
GitHub repository uploaded by Peter Johnson which has a lot of the files (including pmodelib) which are a bit harder to find now-a-days.