Microcomputers and Assembly Language
CSC 231, Fall 2009
Judy Franklin
Based largely on 231 taught by Dominique Thiébaut
| 1. Introduction | 7. Grading Policy |
| 2. Class Times | 8. Professor |
| 3. Textbooks | 9. Teaching Assistant |
| 4. Other Sources | 10. Lab Assistant |
| 5. Lateness Policy | 11. Office/Lab Hours |
| 6. Grading |
Professor:
Judy Franklin
Ford Hall, 355
Telephone: 3858
Office hours
Monday, Wednesday 2:30 - 3:00, Thursday 12:30-2-->
Class Times: Lectures: Monday, Wednesday 1:10 - 2:30 p.m., Bass 102
Go to the class
Homepage for exercises, demo programs, and misc. information.
For now, view the
csc231 video to see a bit or two about this course.
Introduction:
CSC231, Microcomputers and Assembly Language, is a 4-credit course required for the Computer Science major and is an elective for Engineering.
It is usually offered in the fall, and is the third computer course most CS majors will select, after having taken CSC111 and
CSC112, both prerequisites for CSC231. The CSC112 prerequisite will be
waived this semester, with permission of the instructor
Like CSC111 and CSC112, Micro and
Assembly Language is a programming intensive class, where
students learn how the high-level constructs of Python, C, C++, or Java
programs are executed by the computer: procedure calls and
parameter passing, stack use and recursion. The class is also an
introduction to the organization of the Intel 80X86/Pentium family
of processors, and to the architecture of the IBM PC.
Students write
programs that directly control the microprocessor and the
different hardware components inside the computer,
The programming environment is Linux, and we use the
NetWide Assembler (NASM) to assemble programs. Working on homework
assignments will require using computers in one of several ways:
In short, any PC compatible in Burton Hall, in Bass
Hall, in Seelye, in Engineering, or connected to one of the Novell networks on
campus can be used to access our Unix environment and work on CSC231 assignments.
Prerequisites: Normally, CSC111, Introduction to computer science, and CSC112, Data structures, but the 112 perequisite is waived for 2009. Students should also have a good understanding of the binary and hexadecimal systems, which will be reviewed briefly during class.
Schedule:
The class meets twice a week, and
programming assignments are given regularly. About 10
homework assignments can be expected.
There will be an in-class midterm exam and a final take-home
exam. There will be a final project that involves research into another
processor and its intruction set.
The course covers the following topics:
Textbooks:
Introduction to Assembky Language Programming, Second Edition, by S.
Dandamudi.
Other Useful Documents:
Other Sources of Material: Check the Class Homepage for additional links to assembly-related sources.
Lateness Policy:
Your grade will decrease by one
whole grade for each day your assignment is late
(except in case of
documented illness or personal difficulties).
The assignments are tentatively scheduled to be due every Thursday evening
at midnight.
Grading: Homework assignments 55%, Midterm 15%, Final 15%, Final Project 15%.