powered by
Center for Curriculum and Transfer Articulation
Assembly Language Programming on Motorola Microprocessors
Course: CSC225

First Term: 2018 Fall
Lec + Lab   4.0 Credit(s)   5.0 Period(s)   5.0 Load  
Subject Type: Academic
Load Formula: T Lab Load


Description: Assembly language programming including input/output programming and exception/interrupt handling. Register-level computer organization, I/O interfaces, assemblers, and linkers. Macintosh-based assignments.



MCCCD Official Course Competencies
1. Use all registers in assembly language programs. (I)
2. Determine appropriate registers to use with specific assembly language commands. (I)
3. Describe basic computer organization, including memory layout, and data storage. (I)
4. Use addressing modes to move information and perform computations. (II)
5. Manipulate data to perform computations. (III)
6. Use conditional and unconditional branches to create loop, if-then, and case branching structures. (IV)
7. Write and call procedures with parameter passing. (V)
8. Use input/output interrupts to control a hardware device. (VI)
MCCCD Official Course Competencies must be coordinated with the content outline so that each major point in the outline serves one or more competencies. MCCCD faculty retains authority in determining the pedagogical approach, methodology, content sequencing, and assessment metrics for student work. Please see individual course syllabi for additional information, including specific course requirements.
 
MCCCD Official Course Outline
I. Computer organization
   A. Memory sizes and layout
   B. Data elements and size
   C. Register set organization, PC, IR
II. Addressing modes
   A. Direct, absolute, and immediate modes
   B. Index modes and applications to records
   C. Register indirect, predecrement, and postdecrement modes
III. Data manipulation instructions and applications
   A. Data movement
   B. Arithmetic/logical/character
   C. Rotates and shifts
   D. Binary coded decimal (BCD)
IV. Control-flow instructions and applications
   A. Unconditional branches, self-relative
   B. Flag-based conditional branches
      1. Application to if-then-else structures
      2. Application to loops
   C. Indexed jumps, indirect branches, case branching
V. Procedure calls and parameter passing
   A. Call, return
   B. Register, stack, and in-line parameter blocks
   C. Pointers, indirection
   D. External procedures, linking
      1. External assembly routines
      2. High level language
VI. Introductory input/output
   A. Introductory device control
   B. Interrupt handling
 
MCCCD Governing Board Approval Date: 12/11/2012

All information published is subject to change without notice. Every effort has been made to ensure the accuracy of information presented, but based on the dynamic nature of the curricular process, course and program information is subject to change in order to reflect the most current information available.