Bob Forward
Professor, Computer Technology
Mgr, Mainframe Operations

(903) 832-5565 ext. 3344

email: bforward@texarkanacollege.edu

 
 
COSC 1319 -- Assembly Language Programming
 

Required Materials

Text: Assembly Language For Intel-Based Computers, 5th Edition by Kip R. Irvine
ISBN information

Course Objective

To acquaint the student with computer organization at the machine level and to enable the student to relate instructions and data formats appearing in high-level languages to those at the machine level.

Prerequisites

The student must have successfully completed at least one high-level language course (COBOL, FORTRAN, BASIC, PASCAL, or C) in which structured programming was emphasized. A student who has successfully completed a course in Programming Logic & Design will have an advantage. A working knowledge of pseudocode is also recommended.

Course Format

Text material and some practical application will be combined with homework, in-class exercises, and tests, to provide a comprehensive study of Assembly Language.

Lab

Computer programming is time-consuming and lab time is an essential contribution to the total effort. The student may need to spend additional time each week with lab work.

Final Grade

The final grade will be determined from an average of points accumulated for required work:
  • unannounced tests and homework
  • announced tests
  • program exercises
  • in-class exercises
  • final exam
Final average:
90-100.....A
80-89.99...B
70-79.99...C
60-69.99...D
below 60...F
No incomplete grades will be given for failure to attend and participate. If you must quit, you should initiate an official withdrawal in the Admissions Office prior to the last date to drop courses. Attendance and participation are required for successful completion of the course. You may be dropped from the course without notice after a total of two weeks of class absences.

Homework

Homework assignments must be completed prior to the beginning of class on the date for which it is due. The student should develop a written response to each assigned homework problem. To receive credit, the student may be required to:
  • 1. submit the entire assignment to the instructor,
  • 2. verbally explain a problem solution when called upon, or
  • 3. present a problem solution on the board when called upon.
Late homework will not be accepted.

Unannounced Tests

A "pop" test or in-class exercise may be given during any class period. The student should be prepared to be tested upon any previous text assignments or lab procedures. There is no provision for "make up" of a "pop" test.

Announced Tests

Regular tests may be given which cover text material and lab procedures. The instructor will announce the test at least one week in advance and will provide a list of test objectives. A "make up" test may be given only with prior instructor approval.

Program Exercises

The instructor will provide a definition of a problem which the student should be able to complete using Personal Computer equipment. A completed program includes a computer-generated printout of the source listing and correct output for the defined problem. For credit, the completed program must be submitted to the instructor by the end of class on the date for which it is due. Late programs may be accepted up to the end of a defined "late date" for that exercise after the due date but for a reduced grade.

Final Exam

A comprehensive written exam will be given at the end of the course. A list of exam objectives will be provided to the student. There is no provision for a "make up" exam.

Course Outline

  1. Introduction
    1. Number systems and data representation
    2. Assembly Language organization and elements
  2. Computer Architecture
    1. System hardware and software
    2. Memory addressing
    3. Assembly Language fundamentals and program structure
  3. Assembly Language instructions
    1. Data transfer
    2. Integer arithmetic
    3. Transfer of control and conditional processing
    4. Bit manipulations
    5. String operations and one-dimensional arrays
    6. Interrupts
    7. Two-dimensional arrays
    8. Text Graphics

This page last updated Dec 12, 2006