Okay, I think this question is for someone like Saz. Next semester (or perhaps the one after the next) I will be taking an assembly programming class to help fulfill my core requirements for my Computer Science AS. If assembly programming is based on the type of processor, then how the hell does one go about learning assembly for each different processor available? For example, isn't it different for AMD/Pentium, 32/64 bit, and now perhaps single/dual core? Then isn't it different depending on your OS? *nix vs. windows? And now it will be different for 32bit vs. 64bit windows also? This has been bugging me for quite some time now.