Jul 04, 2020
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.
Prior: CST 113 Introduction to Programming and a college-level algebra and trigonometry course
Prior or Concurrent: CST 170 Digital Logic
2 Class Hours, 2 Laboratory Hours
Learning Outcomes of the Course:
Upon successful completion of this course the student will be able to:
- Describe the differences between 8, 16, 32 and 64-bit microprocessor architectures.
- Write assembly language code demonstrating how 8, 16, 32 and 64-bit values can be used with software code.
- Discuss and write code using the seven basic programming modes in assembly language.
- Discuss and illustrate with programming code the use of branching, flags, stacks, procedures, macros, and interrupts.
- Discuss and write programming code for the basic arithmetic and logic operations available in assembly language.
- Discuss the need for and write code demonstrating multiple precision arithmetic.
- Discuss the need for and the technique of using pointers in programming code.
- Discuss string operations and write assembly language code demonstrating a variety of string operations including search and search & replace.
- Discuss the need and operation of the mathematics coprocessor.
- Discuss and write assembly language programming code using the coprocessor.
- Write programming code using inline assembly language programming within a C++ program and with a stand-alone assembler, such as MASM or TASM.
Add to Portfolio (opens a new window)