SCC Home

Course and Articulation Information

View Courses

Administrative Access

Assist.org

http://www.can.csus.edu

Solano Community College 4000 Suisun Valley Road Suisun CA 94585


[Format for printing]

General Course Information
1a. Course Dept.: CIS
1b. Course Number: 020
2. Course Title: Assembly Programming
3. Units: 3
4. This Course is: Assoc Degree Applic. - Transfer to UC/CSU/Private

 
Course Format and Duration
5a. Course Length: Full-semester
   
5b. Weekly Hours: 3 Lecture +
    0 Activities +
    1 Lab +
    0 By Arrangement =
Total Weekly Hours: 4
   

 
Method of Instruction
6. Instructional methods used to present course content.
Lecture/Discussion
Lecture/Lab
Online
Hybrid

 
Course Preparation
7a. Corequisite(s):
None
   
7b. Prerequisite(s):
CIS 010 or 015 or 022 or 035 with a grade of C or CR or better
   
7c. Course Advisory:
SCC minimum English and Math Standards
   
8. Repeatability: Not Repeatable
Additional Reapeatability Info:
None 

 
CATALOG DESCRIPTION AND OTHER CATALOG INFORMATION
9a. Catalog Description:
A hardware-oriented programming course dealing with programming a computer at the assembler language level. Emphasis will be on the assembly language of computers.
9b. Other Catalog information:
None
   
10. Student Performance Objectives:
As a result of successful completion of this course, a student will be able to:

1. Analyze a problem statement and design a solution for that problem.
2. Construct assembler code to implement the solution of the problem.
3. Debug and test the coded solution for syntax and logic errors.
4. Comprehend the factors involved with programming at a hardware level.
   
11. Methods of Evaluating Student Achievement:
1. Written examinations which require the student to demonstrate knowledge of language syntax and methods of problem-solving using assembler language programming.
2. Lab assignments requiring the student to demonstrate proficiency in the use of assembler language.
3. Class discussions.
   
12. Student Assignments (Homework):
   
a. Required Reading Assignments:
Approximately 30-40 pages/week from required textbook
   
b. Required Writing Assignments:
The analysis, design, and construction of assembly programs with supporting documentation
   
c. Other (Terms projects, research papers, portfolios, etc.)
Assigned laboratory projects
   
13. Course Content Outline:
Students will be required to critically analyze, evaluate, and utilize the following concepts, characteristics, and techniques.

I. Introduction to the assembly language

II. General Coding Information
A. Conventions
B. Syntax and structure
C. Terms and expressions

III. Numbering systems
A. Binary
B. Hexadecimal and/or octal
C. Signed and unsigned integers
D. Carry and overflow concepts

IV. Computer Hardware
A. Random access memory
B. Central processing unit
C. Registers

V. The Assembler process
A. Object code generation and machine language
B. Defining and addressing memory locations
C. Moving data around in memory

VI. Simple mathematical operations
A. Two's complement addition
B. Assembler mnemonic supporting basic math operations

VII. Comparison operations and branching in Assembly
A. Comparisons and two's complement addition
B. Mnemonics

VIII. Arrays and bit manipulation
A. String operations within assembly
B. Arrays and indices
C. Bit manipulation including shift, negation, and rotate

IX. Using the stack
A. Placing memory locations on and removing them from the stack
B. Using procedures within programs
C. Using the stack to pass parameters to procedures
D. Recursive logic and the stack

X. Input and output using the keyboard and monitor
A. Interrupts and the supporting functions
B. Keyboard buffer and controlling it
C. String operations and conversion of ASCII to binary

XI. Advanced addressing concepts and data structures

XII. File operations
A. Interrupts in support of disk operations
B. Creating, reading, and writing files
C. Locating records by sequence and random access

XIII. Advanced monitor operations
A. Addressing specific locations on the monitor
B. Monitor random access memory locations
C. The concept of video pages
D. Using video pages for speed and graphics

XIV. Advanced interrupts and terminate and stay resident routines
A. Design and development considerations unique to TSRs
B. Advanced interrupts for determining hardware configurations
C. Working with external devices

XV. Binary coded decimal
A. Storage format of BCD
B. Math requirements when using BCD
C. Adjustment for ASCII notation when manipulating BCD locations
   
14a. All textbooks, resources and other materials used in this course are:
College level
   
14b. EXAMPLE texts, reading and resources:
Abel. Programming Assembler Language.
Prentice Hall, 1989

 
Stern, Sager, & Stern. Assembler Language Programming.
Wiley, 1986

 
Quails. Mainframe Assembler Programming.
Wiley, 1998

 

 
General Education/Transfer Information
IGETC:
 
CSU:
 
SCC GE:   D3c-Course in lieu of D3a


 
CAN Information
CAN CSCI 10
 

 


Questions/Comments for SCC? Then please contact us.