Assembly
Computer Organization and Assembly Languages, Fall 2007

Introduction

This course is about computer organization and assembly languages, specifically for Intel architectures. You might wonder why learning assembly languages. After all, who will write assembly programs these days. Actually, people still write assembly for faster codes (compiler is not as smart as men yet), smaller codes (for devices with limited amount of memory such as mobile devices) and specific architectures (in which there are not even compilers, for example, early GPUs). With these in mind, other than the fundamentals about assembly programming, this course emphasizes on code optimization techniques on writing fast and small codes for specific architectures, here, Intel architectures.


Recent updates

January 7, 2008Slides for lecture #15 is posted.
December 31, 2007Slides for lecture #14 is posted.
December 24, 2007final project is posted.
December 24, 2007Slides for lecture #13 is posted.
December 10, 2007assignment #4 is posted.
December 10, 2007Slides for lecture #11 is posted.
December 3, 2007Slides for lecture #10 is posted.
November 26, 2007Slides for lecture #9 is posted.
November 21, 2007assignment #3 is posted.
November 21, 2007midterm problem set is posted. Here is the statistics for the exam.
November 14, 2007Slides for lecture #8 is posted.
November 5, 2007Slides for lecture #7 is posted.
October 29, 2007We will have a midterm exam on 11/12. For your reference, old exams are available here (2005|2006) Solution for midterm 2006 is here.
October 29, 2007Slides for lecture #6 is posted.
Ocotber 22, 2007assignment #2 is posted.
October 22, 2007Slides for lecture #5 is posted.
October 15, 2007Slides for lecture #4 is posted.
Ocotber 8, 2007assignment #1 is posted.
October 8, 2007Slides for lecture #3 is posted.
October 1, 2007Slides for lecture #2 is posted.
September 17, 2007Slides for lecture #1 is posted.
September 17, 2007 Subscribe via this website.
July 3, 2007This webpage is up.