This is an old lecture I had in my assembly language programming class (CS 301) and I just thought to put it up here just in case anyone wants to learn assembly.
http://www.cs.uaf.edu/2005/fall/cs301/lecture/
Also from the site a gcc x86 cheat sheet
http://www.cs.uaf.edu/2005/fall/cs301/support/x86/index.html
For x86-64 the x86-64 whitepaper
http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/x86-64_wp.pdf
If you have any questions about what is said in the lectures please ask.
Maybe also make this topic a assembly program collaberation.