Maricopa Community Colleges  CSC225   19996-20016 
Official Course Description:   MCCCD Approval:  04/27/99
CSC225      19996-20016 L+L 4 Credit(s) 5 Period(s)
Assembly Language Programming on Macintosh and Motorola 68000-Family Microprocessors
Assembly language programming including input/output programming and exception/interrupt handling. Register-level computer organization, I/O interfaces, assemblers, and linkers. Macintosh-based assignments. Prerequisites: [(CSC100 or CSC110 or CSC200) and CSC/EEE120] or permission of instructor.
 
Go to Competencies    Go to Outline
 
MCCCD Official Course Competencies:
 
CSC225   19996-20016 Assembly Language Programming on Macintosh and Motorola 68000-Family Microprocessors
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)
Go to Description    Go to top of Competencies
 
MCCCD Official Course Outline:
 
CSC225   19996-20016 Assembly Language Programming on Macintosh and Motorola 68000-Family Microprocessors
    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
              Go to Description    Go to top of Competencies    Go to top of Outline