Fall 2015 CS 301: Assembly Language Programming
Final course grades
and detailed project feedback is on NetRun. Thank you for a fun semester! The final exam was Friday, December 18, 10:15 am -- 12:15 pm, in our usual classroom Chapman 104.
Project 2 final drafts are due Wednesday, December 16 on Blackboard ( log in first). HW6 is available
on NetRun , and covers threads, ARM, and CUDA. It is due anytime Friday, December 11.
Project 2 presentations are in class this Wednesday and Friday, December 7 & 11.
Project 2 rough drafts are due Wednesday, December 2 on Blackboard ( log in first).
Project 2 deadlines start Wednesday, November 18 with the project topic (in class). HW5 is available
on NetRun, and due anytime Monday, November 16.
Project 1 final drafts were due Wednesday, November 4 on Blackboard ( log in first). Midterm exam grades are
Project 1 presentations were in class Monday & Wednesday, October 26 & 28. Project 1
rough draft feedback is on NetRun (please read it!)
Project 1 rough drafts are due on Blackboard ( log in first) Wednesday, October 14. HW4 is available
on NetRun, and due anytime Monday, October 12. HW3 is available
on NetRun, and due anytime Friday, September 25. HW2 is available
on NetRun, and due anytime Friday, September 18. HW1 is available
on NetRun, and due anytime Monday, September 14. Use your alaska.edu email address to
get a NetRun account, then log in to NetRun, and HW0 should be listed at the bottom of the screen under "CS 301: Homepage (Fall 2015)" (if you don't see it, email me!). There are 7 problems, numbered 0-6, and it's due anytime Friday, September 11.
Lecture Notes (and examples, and reference info!)
Locality in memory and execution, 12/07
Graphics Processing Unit (GPU) programming with CUDA, 12/04
ARM processors, 11/30
Optional pre-Thanksgiving lecture on Quantum Computing, 11/25
Memory Cache, and Performance, 11/23
Multicore via Kernel Threads, 11/18
Context Switching: User-Level Threads (coroutines), 11/16
Trap and emulate, 11/13
System calls, 11/09
Performance programming, 11/06
SSE floating point in C++, 11/04
SIMD: Parallel Floating Point with SSE, 11/02
Floating point in assembly, 10/30
Floating point numbers, 10/23
Midterm exam in class Wednesday, 10/21
Course review for midterm Monday, 10/19
The Linker, 10/16
Dynamic Binary Translation, 10/14
Macros in assembly and C/C++, 10/12
Inline assembly language in C++ code, 10/09
printf: formatted output in plain C or assembly, 10/07
Bits, signed, and bitwise operators, 10/05
Malloc Internals, 10/02
Structures, Strings, and Linked Lists in Assembly, 09/25
Memory Allocation, 09/23
Pointer Arithmetic and Arrays, 09/21
Memory Addresses, 09/18
All the registers, the Stack and push/pop, 09/16
Calling functions in assembly, 09/14
Loops and branches, 09/11
Assembly language basics: arithmetic instructions, 09/09
Language hierarchy, 09/04
Index of 2015 Fall
Associate Professor, Computer Science
University of Illinois, Urbana-Champaign 2004 Ph.D.
Computer graphics; parallel programming; robotics; 3D printing.
MTWRF 3:30 p.m. to 5 p.m.