Apr 19, 2024  
Website Catalog (In Development) 
    
Website Catalog (In Development)

CST 220 - Microprocessors and Assembly Language Programming


This course includes an introduction to the 32-bit Intel architecture with programming techniques utilizing the Intel microprocessor and coprocessor family.  Concepts include: programming modes, branching, flags, stacks, procedures, macros, interrupts, arithmetic and logic operations, multiple precision arithmetic and string operations.  Extensive laboratory work is done on small systems.

Prerequisite- Corequisite
Prior:  CST 113 Introduction to Programming and a college-level algebra and trigonometry course

Prior or Concurrent:  CST 170 Digital Logic

Credits: 3
Hours
2 Class Hours, 2 Laboratory Hours
Course Profile
Learning Outcomes of the Course:

Upon successful completion of this course the student will be able to:

  1. Describe the differences between 8, 16, 32 and 64-bit microprocessor architectures.
  2. Write assembly language code demonstrating how 8, 16, 32 and 64-bit values can be used with software code.
  3. Discuss and write code using the seven basic programming modes in assembly language.
  4. Discuss and illustrate with programming code the use of branching, flags, stacks, procedures, macros, and interrupts.
  5. Discuss and write programming code for the basic arithmetic and logic operations available in assembly language.
  6. Discuss the need for and write code demonstrating multiple precision arithmetic.
  7. Discuss the need for and the technique of using pointers in programming code.
  8. Discuss string operations and write assembly language code demonstrating a variety of string operations including search and search & replace.
  9. Discuss the need and operation of the mathematics coprocessor.
  10. Discuss and write assembly language programming code using the coprocessor.
  11. Write programming code using inline assembly language programming within a C++ program and with a stand-alone assembler, such as MASM or TASM.