HTTPS clone URL
Subversion checkout URL
x86 Assembly Primer for C Programmers
Assembly C Shell
Fetching latest commit...
Cannot retrieve the latest commit at this time.
|Failed to load latest commit information.|
|.gitignore||revised stack slides; added .gitignore|
|apfcp.tex||rearranged slides; fixed formatting throughout; added hamster|
x86 Assembly Primer for C Programmers Ivan Sergeev Date: Jan 22 07:00pm - 09:00pm, Jan 24 07:00pm - 09:00pm in 4-231 A solid grasp of assembly language makes you a better programmer. Understanding assembly gives you: * insight into the true cost of high-level language operations (is modulus % cheap? when is it and when is it not?) * a keen understanding of how program memory is managed and manipulated * ability to debug at the lowest level, which means you can catch the subtlest of bugs * ability to utilize processor-specific instructions that squeeze the most out of every clock cycle and available processor features * the appreciation of time / space advantages that different compiler optimization settings can yield * a fluency with low-level detail that makes it easy to pick up new computer architectures Come to the x86 Assembly Primer and get a full introduction into x86 assembly language, program memory, stack frames, system calls, the role of libc, some of the convoluted nuances of x86, the x86-64 architecture, and some comparisons to other architectures. Enhance your quest in becoming a systems programming ninja here! Platform: strictly x86-32 GNU/Linux, gcc toolchain. Assembly Syntax: AT&T/GAS. Prereqs: Intermediate C