Computer Science

The Art of Assembly Language

Spring 2003

Welcome to the undergraduate assembly course. If you are just browsing, you're probably interested in the online resources below.

Course Version : 1.0

Course Abstract:

This course is divided into four main volumes: a volume on data representation, a volume on introduction to machine architecture, a volume on basic assembly language programming, and a volume on intermediate assembly language programming.

This course is a restrictive one and carries three credits.


YAN Hongfei, room 1714E, Science office building No. 1, yhf AT, 010-62765817, office hours by appointment.

Teaching Assistant:

HE Xing , room 1345W,Science office building No. 1, hexing AT, 010-62753379

Time and Place:

at 16:50-17:40,17:50-18:40 every Wed, & 14:40-15:30,15:40-16:30 every other Fri (every odd week). 2002-2003 academic year calendar
Classroom 103, Science teaching building No.1.


The Art of Assembly Language Programming assumes that the reader already knows at least one high level programming language like C/C++, Java, or Pascal/Delphi. If you understand the basics of computer programming, you're ready to learn assembly language programming!

Grading Policy:

There will be assignments with weight 35%, a quiz with 10%, and a course project with 10% (including a bonus with 5%). Be advised that the assignments are a little time-consuming, especially for the inexperienced. There will also be a final exam (50% of your grade and closed book). Notation: these weights are subject to minor variation.

Submitting Assignments:


All homework is to be done individually, and collaboration is restricted to verbal discussion.

Required Textbook:

Reference books and links:


I would like to thank Prof. LI Xiaoming and Prof. DAI Yafei for their suggestions on the opening of this course in spring 2003.