CSCI321: Assembly Language Programming

I. Course prefix and number CSCI 321
II. Number of semesters hours 3
III. Pre-requisites CSCI 241
IV. Location of classroom and time course meets Wubben 145 MWF 800AM 850AM
V. Instructor name
Office location
Phone
Email address
Web page
Dr. Warren MacEvoy
Wubben 151
248-1070
[email protected]
http://www.mesastate.edu/~wmacevoy
VI. Office hours See home page
VII. Course Description

This is a course in assembly language programming in the context of embedded systems design. You will learn how to use C and assembly language to create stand-alone embedded systems applications.

VIII. Textbook and materials Fundamentals of Embedded Software by Daniel W. Lewis
IX. Course Objectives See course description.

X. Methods

Lecture, exams, individual and group projects.

XI. Policy on absences and tardies

Make up exams will only be given with advanced notification or very unusual circumstances. You are responsible for material given in class, including changes of schedule for exams.

XII. Policy on late work

Late projects cost two letter grades per day.

XIII. Policy on academic dishonesty

Cheating will result in the instructor withdrawl of the student with a "fail" grade.

XIV. Disability Arrangements

In coordination with Educational Access Services, reasonable accommodations will be provided for qualified students with disabilities. Please contact EAS at 248-1856, or in person at 1020 Elm Ave., across the street from Monument Hall. Please meet with the instructor the first week of class to discuss accommodations for this class.

XV. Evaluation and grading

40% of the grade will come from tests (usally dropping the worst score), 40% of the grade will come from individual projects. 20% of the grade will come from the final project.

Projects will be graded on an A, B, or F basis:

  • A: Well written and documented, with more bells and whistles than required for the project. Testing procedures must be included with the project.
  • B: Works correctly. Reasonably written. Reasonably documented. Reasonably tested.
  • F: Fails to work. Poorly written, documented, or tested.

You must propose your final project content. At most two people can work on a given project, and the grade will reflect individual contributions to the project. The final project will include a written and oral presentation.

XVI. Major Assignments

Assignments will be given about every 2 weeks. The assigments will be given out at least a week before they are due. An exam will be given roughly after each chapter.

XVII. Course Outline
  1. Data Representation
  2. C
  3. Architecture
  4. C & Assembly
  5. Multitasking & Scheduling

Notes: NASM home and docs NASM examples GAS syntax notes
Use gcc -S -masm=intel <source>.c to convert to MASM (not NASM) syntax.